Un Simple menu Déroulant en Java

Je suis en train de travailler sur une interface utilisateur graphique très simple en Java.

En ce GUI je veux afficher:

  1. Une étiquette avec le texte sur le haut de la page
  2. Un JComboBox mentionné sous le label
  3. Un JButton, en vertu de l'mentionnées JComboBox

Voici mon code:

import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Prova {

public static void main(String[] args) {

    JFrame frame = new JFrame("A Simple GUI");
    frame.setVisible(true);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(500, 500);
    frame.setLocation(430, 100);

    JPanel panel = new JPanel();

    frame.add(panel);

    JLabel lbl = new JLabel("Select one of the possible choices and click OK");
    lbl.setVisible(true);

    panel.add(lbl);

    String[] choices = { "CHOICE 1","CHOICE 2", "CHOICE 3","CHOICE 4","CHOICE 5","CHOICE 6"};

    final JComboBox<String> cb = new JComboBox<String>(choices);

    cb.setVisible(true);
    panel.add(cb);

    JButton btn = new JButton("OK");
    panel.add(btn);

    }
}

Malheureusement, le résultat que j'obtiens est

Un Simple menu Déroulant en Java

Comme vous pouvez le voir dans l'image, l'étiquette, la JComboBox et la JButton sont sur la même ligne!

Au lieu de cela, je les veux "empilées" comme décrit ci-dessus:

JLabel

JComboBox

JButton

J'ai essayé d'utiliser le setLocation(int x, int y) méthode, mais ils montrent toujours dans la même position.

Merci beaucoup!

OriginalL'auteur NoobNe0 | 2014-03-19