JRadioButton

[Résolu]
Signaler
Messages postés
55
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
21 décembre 2010
-
Messages postés
55
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
21 décembre 2010
-
bonjours mes amis;
j'ai un problème au niveau de JRadioButton ; il affiche un et il n'affiche pas l'autre aussi j'ai fait l'appel a des données a partir d'une base de donnée et le n'affiche pas. voila mon code
//////////////////////////////////////////////////////////////////
import java.io.*;
import java.awt.*;

import javax.swing.*;
import javax.swing.border.Border;

import java.awt.event.*;
import java.sql.*;
import java.util.*;

class evaluation {
JFrame f;
JPanel p1,p2;
JLabel l1, l2, l3, l4,l5,l6,l7,l8,l9,l10,l11;
JTextField tf1,tf2,tf3,tf4,tf5,tf6,tf7,tf8,tf9,tf10,tf11;
JButton savebtn,resetbtn ;

JRadioButton c1 = new JRadioButton("oui");
JRadioButton c2 = new JRadioButton("non");
ButtonGroup group = new ButtonGroup();
evaluation(){

f=new JFrame("Evaluation");
p1=new JPanel();
l1=new JLabel("Matricule :");
l2=new JLabel("affectation :");
l3=new JLabel("sujet :");
l4=new JLabel("date:");
l5=new JLabel("lieu :");
l6=new JLabel("heure :");
l7=new JLabel("duree:");
l8=new JLabel("formateur");
l9=new JLabel ("document");
l10=new JLabel("document de test");

l11=new JLabel("Evaluation");
l11.setHorizontalAlignment(SwingConstants.LEFT);


tf1=new JTextField(12);
tf2=new JTextField(12);
tf3=new JTextField(12);
tf4=new JTextField(12);
tf5=new JTextField(12);
tf6=new JTextField(12);
tf7=new JTextField(12);
tf8=new JTextField(12);
tf9=new JTextField(12);
tf10=new JTextField(12);

tf11=new JTextField(12);


group.add(c1);
group.add(c2);
c1.setSelected(true);
savebtn=new JButton(" Ajouter ");
resetbtn=new JButton(" Annuler");

p1.setLayout(null);
p1.setBorder(BorderFactory.createEtchedBorder());

addComponent(p1, l1, 5,17,106,18);
addComponent(p1, l2, 5,47,106,18);
addComponent(p1, l3, 5,77,106,18);
addComponent(p1, l4, 5,107,106,18);
addComponent(p1, l5, 5,137,106,18);
addComponent(p1, l6, 5,167,106,18);
addComponent(p1, l7, 5,197,106,18);
addComponent(p1, l8, 5,227,106,18);
addComponent(p1, l9, 5,257,106,18);
addComponent(p1, l10, 5,287,106,18);
addComponent(p1, l11, 5,317,106,18);


addComponent(p1, tf1, 110,17,183,22);
addComponent(p1, tf2, 110,47,183,22);
addComponent(p1, tf3, 110,77,183,22);
addComponent(p1, tf4, 110,107,183,22);
addComponent(p1, tf5, 110,137,183,22);
addComponent(p1, tf6, 110,167,183,22);
addComponent(p1, tf7, 110,197,183,22);
addComponent(p1, tf8, 110,227,183,22);
addComponent(p1, tf9, 110,257,183,22);
addComponent(p1, tf10, 110,287,183,22);
addComponent(p1, tf11, 110,317,183,22);
addComponent(p1, c1, 330,317,183,22);
addComponent(p1, c2, 380,317,183,22);

addComponent(p1, savebtn, 100,420,89,28);
addComponent(p1, resetbtn, 200,420,89,28);



tf1.addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
if( e.getKeyCode() == KeyEvent.VK_ENTER ){
String value = tf1.getText();
Connection con = null;
String url = "jdbc:mysql://localhost:3306/";
String db = "eracontacttt";
String driver = "com.mysql.jdbc.Driver";
String user = "root";
String pass = "";
try{
Class.forName(driver);
con = DriverManager.getConnection(url+db, user, pass);
PreparedStatement st=con.prepareStatement("select mat_ouv,affectaion,sujet,date,lieu,heure,duree,formateur,doc,doc_test from plan_for where mat_ouv=?");
st.setString(1,value);
ResultSet res=st.executeQuery();
res.next();
tf1.setText(Integer.toString(res.getInt(1)));
tf2.setText(Integer.toString(res.getInt(2)));
tf3.setText(res.getString(3));
tf4.setText(res.getString(4));
tf5.setText(res.getString(5));
tf6.setText(Integer.toString(res.getInt(6)));
tf7.setText(Integer.toString(res.getInt(7)));
tf8.setText(res.getString(8));
tf9.setText(res.getString(9));
tf10.setText(res.getString(10));




con.close();
}
catch(Exception ee)
{
JOptionPane.showMessageDialog(p1,"Ce matricule n'existe pas");
}
} }
});

resetbtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){
tf1.setText("");
tf2.setText("");
tf3.setText("");
tf4.setText("");
tf5.setText("");
tf6.setText("");
tf7.setText("");
tf8.setText("");
tf10.setText("");
tf11.setText("");

}
});
savebtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae){
String value1=tf1.getText();
String value2=tf2.getText();
String value3=tf3.getText();
String value4= tf4.getText();

String value5= tf5.getText();
String value6=tf6.getText();
String value7=tf7.getText();
String value8=tf8.getText();
String value9=tf9.getText();
String value10=tf10.getText();
String value11=tf11.getText();


Connection con = null;
String url = "jdbc:mysql://localhost:3306/";
String db = "eracontacttt";
String driver = "com.mysql.jdbc.Driver";
String user = "root";
String pass = "";
//System.out.println(value1+value2+value3+value4);
try{
Class.forName(driver);
con = DriverManager.getConnection(url+db, user, pass);
PreparedStatement st=con.prepareStatement("insert into evaluer(mat,affectation,sujet,date,lieu,heure,duree,formateur,doc,doc_test,eval) values(?,?,?,?,?,?,?,?,?,?,?)");
st.setString(1,value1);
st.setString(2,value2);
st.setString(3,value3);
st.setString(4,value4);
st.setString(5,value5);
st.setString(6,value6);
st.setString(7, value7);
st.setString(8, value8);
st.setString(9, value9);
st.setString(10, value10);
st.setString(11, value11);
st.executeUpdate();
JOptionPane.showMessageDialog(p1,"Les données sont correctement insérés .");
con.close();
tf1.setText("");
tf2.setText("");
tf3.setText("");
tf4.setText("");
tf5.setText("");
tf6.setText("");
tf7.setText("");

tf8.setText("");
tf9.setText("");
tf10.setText("");
tf11.setText("");
}
catch(Exception e){
JOptionPane.showMessageDialog(p1,"Erreur dans la présentation des données!");
}
}
});
}

private void addComponent(Container container,Component c,int x,int y,int width,int height) {
c.setBounds(x,y,width,height);
container.add(c);
} //end of addComponent()
void dis()
{
f.getContentPane().add(p1);
f.setSize(390,600);
f.setVisible(true);
f.setResizable(true);
}
public static void main(String z[]){
evaluation pro=new evaluation();
pro.dis();
}

}
/////////////////////////////////////////////////////////////////////////
merci d'avance

6 réponses

Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
Salut,

Le dessin de RadioButton ne se redimensionne pas :
addComponent(p1, c1, 330,317,183,22);
addComponent(p1, c2, 380,317,183,22);

Tu les espaces de 50 pixels mais ils font 183 pixels de large => il y a 133 pixels de superposition => bug d'affichage. Espace-les plus ou bien réduis leur largeur.
D'une manière plus générale, utilise des LayoutManager plutôt que de placer tes composants au pixel près.

Jonathan
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
Idem pour tes TextField, ils sont trop larges et se chevauchent :

addComponent(p1, tf1, 110,17,183,22);
addComponent(p1, tf2, 110,47,183,22);
addComponent(p1, tf3, 110,77,183,22);
addComponent(p1, tf4, 110,107,183,22);
addComponent(p1, tf5, 110,137,183,22);
addComponent(p1, tf6, 110,167,183,22);
addComponent(p1, tf7, 110,197,183,22);
addComponent(p1, tf8, 110,227,183,22);
addComponent(p1, tf9, 110,257,183,22);
addComponent(p1, tf10, 110,287,183,22);
addComponent(p1, tf11, 110,317,183,22);

Diminue donc leur largeur 183 -> 30.
Messages postés
55
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
21 décembre 2010
2
Je ne comprenais pas
Messages postés
55
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
21 décembre 2010
2
salut monsieur;

je ne comprenais pas qu'est ce que tu parle


et merci
Messages postés
519
Date d'inscription
mercredi 21 mars 2007
Statut
Membre
Dernière intervention
19 décembre 2016
25
C'est très simple.

Remplace ça :

addComponent(p1, c1, 330,317,183,22);
addComponent(p1, c2, 380,317,183,22);

par ça :

addComponent(p1, c1, 330,317,50,22);
addComponent(p1, c2, 380,317,50,22);

C'est toujours aussi moche, mais ça fonctionnera sans doute mieux.
Messages postés
55
Date d'inscription
mercredi 14 avril 2010
Statut
Membre
Dernière intervention
21 décembre 2010
2
merci monsieur Jonathan;
désolé mais j'ai une autre problème;
comment je fait un test de telle sorte que si le réponse 'oui' les résultat s'affiche dans un tableau de réponse juste et si non le résultat s'affiche dans un autre tableau dans la base de donnée.
merci
merci
merci