Créer un menu déroulant en Java
-
Créer un menu déroulant à l’aide de
JOptionPane
en Java -
Créer un menu déroulant à l’aide de
JComboBox
en Java
Dans ce tutoriel, nous allons apprendre comment créer un menu déroulant en Java en utilisant deux méthodes. Les deux techniques sont utilisées pour créer des composants GUI, et le menu déroulant en fait partie.
Créer un menu déroulant à l’aide de JOptionPane
en Java
La classe JOptionPane
fait partie du package javax.swing
, utilisé principalement pour créer des boîtes de dialogue. Dans les boîtes de dialogue, nous pouvons ajouter plusieurs types d’éléments, et l’un d’eux est le composant déroulant. Dans l’exemple, nous créons un tableau de chaînes optionsToChoose
contenant les options que nous voulons afficher dans le menu déroulant.
Ensuite, nous appelons la commande JOptionPane.showInputDialog()
qui prend plusieurs arguments ; le premier est le composant parent, où nous pouvons attacher la boîte de dialogue à un cadre comme JFrame
. Le deuxième argument est le message à afficher à côté de la liste déroulante. Nous pouvons également définir le titre de la boîte de dialogue, qui est le troisième argument, puis vient le type de message, qui peut être quelque chose comme un ERROR_MESSAGE
ou un PLAIN_MESSAGE
, mais nous utilisons QUESTION_MESSAGE
.
L’argument suivant est l’icône que nous pouvons afficher à côté de la liste déroulante, mais nous la définissons comme nulle. Le sixième argument est le tableau d’options à choisir dans la liste déroulante, et le dernier argument est la valeur des options à choisir par défaut. Enfin, nous obtenons la valeur sélectionnée retournée par la méthode JOptionPane.showInputDialog()
sous forme de chaîne et l’affichons dans la sortie.
import javax.swing.*;
public class DropDown {
public static void main(String[] args) {
String[] optionsToChoose = {"Apple", "Orange", "Banana", "Pineapple", "None of the listed"};
String getFavFruit = (String) JOptionPane.showInputDialog(null,
"What fruit do you like the most?", "Choose Fruit", JOptionPane.QUESTION_MESSAGE, null,
optionsToChoose, optionsToChoose[3]);
System.out.println("Your chosen fruit: " + getFavFruit);
}
}
Production:
Your chosen fruit : Apple
Créer un menu déroulant à l’aide de JComboBox
en Java
Dans cet exemple, nous utilisons la fonction JComboBox
, qui fait partie du package javax.swing
et est utilisée pour afficher une liste déroulante dans une interface. Ci-dessous, nous créons d’abord le tableau d’options à afficher dans la liste déroulante. JComboBox
est un composant et a besoin d’un cadre pour résider, nous créons donc un objet JFrame
. Ensuite, nous créons l’objet JComboBox
et passons le tableau options comme argument dans le constructeur.
Nous définissons la position et la taille de la boîte de dialogue à l’aide de la fonction jComboBox.setBounds()
. Ensuite, nous créons un objet JButton
, passons le texte à afficher dans le constructeur et définissons les limites. Enfin, pour afficher un message lorsqu’une option est choisie dans la liste déroulante, nous créons un JLabel
et définissons ses limites.
Ensuite, nous ajoutons tous les composants dans le JFrame
en utilisant jFrame.add()
. Nous définissons la disposition de JFrame
comme nulle et fixons sa taille et sa visibilité. A la fin du code, nous ajoutons également une commande ActionListener
qui écoute l’action effectuée par le bouton et appelle sa méthode actionPerformed()
pour afficher le message dans le JLabel
avec l’option que nous avons choisie.
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class DropDown {
public static void main(String[] args) {
String[] optionsToChoose = {"Apple", "Orange", "Banana", "Pineapple", "None of the listed"};
JFrame jFrame = new JFrame();
JComboBox<String> jComboBox = new JComboBox<>(optionsToChoose);
jComboBox.setBounds(80, 50, 140, 20);
JButton jButton = new JButton("Done");
jButton.setBounds(100, 100, 90, 20);
JLabel jLabel = new JLabel();
jLabel.setBounds(90, 100, 400, 100);
jFrame.add(jButton);
jFrame.add(jComboBox);
jFrame.add(jLabel);
jFrame.setLayout(null);
jFrame.setSize(350, 250);
jFrame.setVisible(true);
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String selectedFruit = "You selected " + jComboBox.getItemAt(jComboBox.getSelectedIndex());
jLabel.setText(selectedFruit);
}
});
}
}
Production:
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedInArticle connexe - Java GUI
- Créer une barre de progression Java à l'aide de la classe JProgressBar
- Groupe de boutons en Java
- La méthode pack() en Java
- Obtenir de la valeur à partir de JTextField
- Boîte de message en Java