我想要一个行上有2个元素的表单(JLabel
和JTextField
),
但我不知道Java(Swing)中使用过的布局。
我知道GridBagLayout
是一个很好的布局。有人可以帮助我吗?
public class FenetreAjoutClient {
public JPanel FenetreAjoutClient(){
panel.add(lblNom);
panel.add(txtNom);
panel.add(lblPrenom);
panel.add(txtPrenom);
panel.add(lblAdr);
panel.add(txtAdr);
panel.add(lblCP);
panel.add(txtCP);
panel.add(lblVille);
panel.add(txtVille);
panel.add(lblStatut);
comboStatut.addItem("Particulier");
comboStatut.addItem("Professionnel");
panel.add(comboStatut);
panel.add(lblRemise);
panel.add(txtRemise);
panel.add(lblSaisieObl);
//bnEnregistrer.setEnabled(false);
bnEnregistrer.setPreferredSize(new Dimension(140, 40));
bnEnregistrer.setBackground(new Color(50, 74, 110));
bnEnregistrer.setForeground(Color.WHITE);
bnEnregistrer.addMouseListener(this);
panel.add(bnEnregistrer);
bnAnnuler.setPreferredSize(new Dimension(140, 40));
bnAnnuler.setBackground(new Color(50, 74, 110));
bnAnnuler.setForeground(Color.WHITE);
bnAnnuler.addMouseListener(this);
panel.add(bnAnnuler);
JLabel labels[] = {lblNom, lblPrenom, lblAdr, lblCP, lblVille, lblStatut, lblRemise};
JTextField txtFields[] = {txtNom, txtPrenom, txtAdr, txtCP, txtVille, txtRemise};
for(int i = 0; i < labels.length && i < txtFields.length; i++){
labels[i].setPreferredSize(new Dimension(110, 20));
txtFields[i].setPreferredSize(new Dimension(160, 20));
}
//Composants particuliers
txtAdr.setPreferredSize(new Dimension(230, 20));
txtCP.setPreferredSize(new Dimension(50, 20));
txtRemise.setPreferredSize(new Dimension(50, 20));
activeBouton();
return panel;
}