GridBagLayout ne tiens pas compte des colonnes
Bonjour
Je veux, dans un Jdialog, créer un gridBagLayout a deux colonnes:
Dans la première ligne sur les deux cases je veux mettre un JLabel.
Dans la deuxième ligne sur une case je veux mettre un autre JLabel et sur l'autre case un JTextFIeld.
Grosso modo ma JDialog ressemblera à celle du tuto de sun a l'exception que dans celui-ci le bouton 4 qui prend toute la place doit se trouver au dessus.
http://java.sun.com/docs/books/tutor...t/gridbag.html
Le problème est que quand j'ajoute le premier JLabel sur deux colonnes
Les JLabel et JTextField ajoutés en bas se comportent comme si ils étaient dans une seule colonne.
Voici une capture d'écran de ma Fenêtre lorsque que je n'ajoute pas le Premier JLabel:
http://pix.nofrag.com/f/b/8/bf4fa8da...3fbc477aat.jpg
Et une capture d'écran avec le JLabel ajouté:
http://pix.nofrag.com/9/7/f/02c8af01...a2b6f896et.jpg
Et voici mon code:
Si quelqu'un a une solution je suis tout ouie.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| package ihm;
import java.awt.*;
import javax.swing.*;
public class FenetreSaisieNouveau extends JDialog
{
private static final long serialVersionUID = 1L;
private JTextField champTexteUn;
public FenetreSaisieNouveau()
{
super(Fenetre.getFenetre(),"Saisie nom",true);
this.setSize(1000,500);
Container leContainer=this.getContentPane();
this.champTexteUn=new JTextField(10);
JLabel description=new JLabel("Rentrez le nom des joueurs");
JLabel nomJoueurUn=new JLabel("Premier Joueur:");
leContainer.setLayout(new GridBagLayout());
GridBagConstraints c=new GridBagConstraints();
c.gridx=0;
c.gridy=0;
c.gridwidth=2;
c.weightx=50;
c.fill=GridBagConstraints.NONE;
c.anchor=GridBagConstraints.CENTER;
leContainer.add(description,c);
c.gridx=0;
c.gridy=1;
c.weightx=25;
c.fill=GridBagConstraints.NONE;
c.anchor=GridBagConstraints.LINE_END;
c.insets=new Insets(5,5,5,5);
leContainer.add(nomJoueurUn,c);
c.gridx=1;
c.gridy=1;
c.weightx=25;
c.fill=GridBagConstraints.NONE;
c.anchor=GridBagConstraints.LINE_START;
c.insets=new Insets(5,5,5,5);
leContainer.add(champTexteUn,c);
}
} |
Merci d'avance de votre aide