cs_gastonti
Messages postés15Date d'inscriptionmercredi 31 décembre 2008StatutMembreDernière intervention22 avril 2013
-
10 juil. 2011 à 16:37
cs_jojolemariole
Messages postés519Date d'inscriptionmercredi 21 mars 2007StatutMembreDernière intervention19 décembre 2016
-
11 juil. 2011 à 16:03
salut a tous,mon probleme c'est que mon application comporte 14 zones de textes,mais ils n'ont pas la meme taille,ainsi qu'ils sont dans des differents panels.Common je peu les mettre en meme taille svp?
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 11 juil. 2011 à 13:12
Tes gridLayout ne contiennent pas le même nombre d'objets, dans ce cas, c'est normal que tes JTextField n'aient pas la même taille. Penses peut être au GridBagLayout qui est moins simple d'utilisation mais plus souple.
Il n'y a pas de solution "simple" à ton problème, c'est l'utilisation du GridLayout qui n'est pas souple.
La seule solution est de repenser l'écriture de ta fenêtre. Essayes de dessiner l'ihm que tu souhaites obtenir au moins mentalement (c'est peut être déjà fait) et ensuite, utilises les layout pour l'obtenir.
Je suis désolé de ne pas pouvoir t'aider plus mais ne voyant pas ce que tu souhaites obtenir, ce n'est pas facile de t'en dire plus.
cs_jojolemariole
Messages postés519Date d'inscriptionmercredi 21 mars 2007StatutMembreDernière intervention19 décembre 201625 11 juil. 2011 à 15:57
Salut,
Apparemment tu es un adepte du GridLayout.
Le GridBagLayout est souvent une bonne solution, mais une combinaison de GridLayout et de BorderLayout peut presque toujours suffire.
Le layout par défaut d'une JFrame est justement un BorderLayout.
Aussi, je te propose de ne pas le modifier. Le principe du BorderLayout est de donner le minimum de place aux composants sur les bords (nord, sud, est et ouest) et le maximum de place au composant central. Ça me semble adapté à ton IHM, sous réserve que tu n'aies rien à mettre dans l'espace vide qu'on voit sur la capture. Concrètement, supprime la ligne :
public class Contractuelle extends JFrame implements ActionListener{
Thread t = new Thread(this);
JLabel hr = new JLabel();
JLabel ncin = new JLabel ("Num CIN: " );
JTextField Tncin = new JTextField();
JLabel ninsc = new JLabel("Num Inscription: ");
JTextField Tninsc = new JTextField();
JLabel np = new JLabel("Nom et Prenom:");
JTextField Tnp = new JTextField();
JLabel niv = new JLabel(" Niveau scolaire:");
JTextField Tniv = new JTextField();
JLabel datenais = new JLabel(" Date naissance:");
JTextField Tdatenais = new JTextField();
JLabel sex = new JLabel("sex:");
JComboBox Cbsex = new JComboBox();
JLabel etatciv = new JLabel(" Etat civile:");
JComboBox Cbetatciv = new JComboBox();
String Stetat[] = {"Célibataire","Marié","Divorsé"};
JLabel daterec = new JLabel(" Date recrutement:");
JTextField Tdaterec = new JTextField();
JLabel classe = new JLabel("Classe: ");
JComboBox Cbclasse = new JComboBox();
JLabel degre = new JLabel(" Degré:");
JComboBox Cbdegre = new JComboBox();
JLabel regime = new JLabel(" Regime:");
JTextField Tregime = new JTextField();
JLabel salaire = new JLabel(" Salaire:");
JTextField Tsalaire = new JTextField();
JLabel titre = new JLabel("Titre:");
JTextField Ttitre = new JTextField();
JLabel partie = new JLabel(" Partie:");
JTextField Tpartie = new JTextField();
JLabel circonscription = new JLabel(" Circonscription:");
JComboBox Cbcirconscription = new JComboBox();
JLabel datecont = new JLabel("Date contrat:");
JTextField Tdatecont = new JTextField();
JLabel article = new JLabel(" Article:");
JTextField Tarticle = new JTextField();
JLabel parag = new JLabel(" Paragraphe:");
JTextField Tparag = new JTextField();
JLabel sousparag = new JLabel(" Sous-paragraphe:");
JTextField Tsousp = new JTextField();
JButton ajouter = new JButton("Ajouter");
JButton modifier = new JButton("Modifier");
JButton supprimer = new JButton("Supprimer");
JButton recherche = new JButton("Recherche");
JButton quitter = new JButton("Quitter");
JButton annuler = new JButton("Annuler");
public Contractuelle(){
this.getContentPane().setLayout(new GridLayout(6,8));
JPanel pp = new JPanel();
pp.setLayout(new GridLayout(1,1));
pp.add(hr);
this.getContentPane().add(pp);
JPanel p = new JPanel();
p.setLayout(new GridLayout(1,4));
p.add(ncin);
p.add(Tncin);
p.add(ninsc);
p.add(Tninsc);
this.getContentPane().add(p);
//recuperation des donnees des ComboBox
Object Ocbsex=Cbsex.getSelectedItem();
Object Ocbetatciv=Cbetatciv.getSelectedItem();
Object Ocbclasse=Cbclasse.getSelectedItem();
Object Ocbcircon=Cbcirconscription.getSelectedItem();
Object Ocbdegre=Cbdegre.getSelectedItem();
//Connexion a la base
String req="insert into personnelle values('"+Snp"','"+Sncin+"','"+Snins=+"','"+Snivs+"','"+Sdatenais+"','"+Sregime+"','"+Ssalaire+"','"+Stitre+"','"+Spartie+"','"+Sdatecont+"','"+Sarticle+"','"+Sparag+"','"+Ssp+"','"+Ocbsex+"','"+Ocbetatciv+"','"+Ocbclasse+"','"+Ocbcircon+"','"Ocbdegre+"')";;
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection Con=DriverManager.getConnection("Mes documents\bdCont");
Statement st = Con.createStatement();
int x = st.executeUpdate(req);
st.close();
Con.close();
}
catch(ClassNotFoundException a){
System.out.println("Erreur");
}
catch(SQLException a){
JOptionPane.showMessageDialog(null, "Erreur requete","alert", JOptionPane.ERROR_MESSAGE);
public class Contrat extends JFrame implements ActionListener,Runnable{
Thread t = new Thread(this);
JLabel hr = new JLabel();
JLabel ncin = new JLabel ("Num CIN: " );
JTextField Tncin = new JTextField();
JLabel ninsc = new JLabel("Num Inscription: ");
JTextField Tninsc = new JTextField();
JLabel np = new JLabel("Nom et Prenom:");
JTextField Tnp = new JTextField();
JLabel niv = new JLabel(" Niveau scolaire:");
JTextField Tniv = new JTextField();
JLabel datenais = new JLabel(" Date naissance:");
JTextField Tdatenais = new JTextField();
JLabel sex = new JLabel("sex:");
JComboBox Cbsex = new JComboBox();
JLabel etatciv = new JLabel(" Etat civile:");
JComboBox Cbetatciv = new JComboBox();
String Stetat[] = {"Célibataire","Marié","Divorsé"};
JLabel daterec = new JLabel(" Date recrutement:");
JTextField Tdaterec = new JTextField();
JLabel classe = new JLabel("Classe: ");
JComboBox Cbclasse = new JComboBox();
JLabel degre = new JLabel(" Degré:");
JComboBox Cbdegre = new JComboBox();
JLabel regime = new JLabel(" Regime:");
JTextField Tregime = new JTextField();
JLabel salaire = new JLabel(" Salaire:");
JTextField Tsalaire = new JTextField();
JLabel titre = new JLabel("Titre:");
JTextField Ttitre = new JTextField();
JLabel partie = new JLabel(" Partie:");
JTextField Tpartie = new JTextField();
JLabel circonscription = new JLabel(" Circonscription:");
JComboBox Cbcirconscription = new JComboBox();
JLabel datecont = new JLabel("Date contrat:");
JTextField Tdatecont = new JTextField();
JLabel article = new JLabel(" Article:");
JTextField Tarticle = new JTextField();
JLabel parag = new JLabel(" Paragraphe:");
JTextField Tparag = new JTextField();
JLabel sousparag = new JLabel(" Sous-paragraphe:");
JTextField Tsousp = new JTextField();
JButton ajouter = new JButton("Ajouter");
JButton modifier = new JButton("Modifier");
JButton supprimer = new JButton("Supprimer");
JButton recherche = new JButton("Recherche");
JButton quitter = new JButton("Quitter");
JButton annuler = new JButton("Annuler");
//recuperation des donnees des ComboBox
Object Ocbsex=Cbsex.getSelectedItem();
Object Ocbetatciv=Cbetatciv.getSelectedItem();
Object Ocbclasse=Cbclasse.getSelectedItem();
Object Ocbcircon=Cbcirconscription.getSelectedItem();
Object Ocbdegre=Cbdegre.getSelectedItem();
//Connexion a la base
String req="insert into personnelle values('"+Snp"','"+Sncin+"','"+Snins=+"','"+Snivs+"','"+Sdatenais+"','"+Sregime+"','"+Ssalaire+"','"+Stitre+"','"+Spartie+"','"+Sdatecont+"','"+Sarticle+"','"+Sparag+"','"+Ssp+"','"+Ocbsex+"','"+Ocbetatciv+"','"+Ocbclasse+"','"+Ocbcircon+"','"Ocbdegre+"')";;
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection Con=DriverManager.getConnection("Mes documents\bdCont");
Statement st = Con.createStatement();
int x = st.executeUpdate(req);
st.close();
Con.close();
}
catch(ClassNotFoundException a){
System.out.println("Erreur");
}
catch(SQLException a){
JOptionPane.showMessageDialog(null, "Erreur requete","alert", JOptionPane.ERROR_MESSAGE);
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020371 11 juil. 2011 à 13:30
Quand on lit ton code, on ne sait pas ce que ca veut dire "mal affiché". C'est un peu comme si tu nous donnait un code en disant : "il ne fait pas ce que je veux".
C'est assez difficile de t'aider sur un problème d'ihm. Si tu avais un bug, se serait vite résolut mais là, je ne vois pas ce que je peux te dire de plus que ce que je t'ai dit dans mon post précédent.
cs_gastonti
Messages postés15Date d'inscriptionmercredi 31 décembre 2008StatutMembreDernière intervention22 avril 2013 11 juil. 2011 à 14:01
pouvez vous svp faire une correction a ce code? j'arrive pas a expliquer mon prb,les composants du 1er panel sont tres compressés.
merci pour votre aide :)