Java Swing - JButtons sur la Nouvelle Ligne
Je suis en train d'imprimer une liste générée de manière dynamique des boutons chaque bouton sur une nouvelle ligne.
public void addComponentToPane(Container pane) {
JTabbedPane tabbedPane = new JTabbedPane();
//Create the "cards".
JPanel card1 = new JPanel() {
JPanel card1 = new JPanel()
...
int n = 10;
JButton[] jButtons = new JButton[10];
for(int i=0; i<n; i++){
jButtons[i] = new JButton("test" + i);
card1.add(jButtons[i]);
//card1.add("<br>");//<--this is wrong; but hopefully you get my point.
jButtons[i].addActionListener(this);
}
Vous devez vous connecter pour publier un commentaire.
Les mettre dans une boîte:
ou, si vous voulez que tous les boutons sont de la même taille, l'utilisation GridLayout avec une colonne:
Voici deux solutions à l'aide d'une contrainte
GridLayout
et unBoxLayout
Je préfère le
GridLayout
(sur la gauche) car il normalise la largeur des boutons et il est facile d'ajouter un petit espace entre eux.Utilisation
GridBagLayout
et définirGridBagConstaints.gridy
champ.Je suppose que vous avez besoin de quelque chose comme ceci :
Pour cela, vous avez besoin d'un Zone De Mise En Page , voir ce pour plus de détails : Comment Utiliser BoxLayout
et si besoin, voici une démo : Java Tutoriels De Code De L'Échantillon – BoxLayoutDemo.java