JComboBox | Java Swing
JComboBox fait partie du package Java Swing. JComboBox hérite de la classe JComponent. JComboBox affiche un menu contextuel sous forme d’une liste qui permet à l’utilisateur de sélectionner une option dans cette liste spécifiée. JComboBox peut être modifiable ou en lecture seule selon le choix du programmeur.

Les constructeurs de la classe JComboBox sont:
| JComboBox() | Crée un nouveau JComboBox vide. |
| JComboBox(ComboBoxModel M) | Crée un nouveau JComboBox avec les éléments du ComboBoxModel spécifié |
| JComboBox(E[] i) | Crée un nouveau JComboBox avec les éléments du tableau spécifié. |
| JComboBox(Vector items) | Crée un nouveau JComboBox avec les éléments du vecteur spécifié. |
Les méthodes couramment utilisées sont:
- addItem(E item) : ajoute l’élément à JComboBox
- addItemListener( ItemListener l) : ajoute un ItemListener à JComboBox.
- getItemAt(int i) : renvoie l’élément à l’index i
- getItemCount() : retourne le nombre d’éléments de la liste
- getSelectedItem() : retourne l’élément qui est sélectionné
- removeItemAt(int i) : supprime l’élément à l’index i
- setEditable(boolean b) : le booléen b détermine si la liste est modifiable ou non. Si la valeur « true » est transmise, la liste est modifiable ou si « false » la liste n’est pas modifiable.
- setSelectedIndex(int i) : sélectionne l’élément de JComboBox à l’index i.
- showPopup() : permet à la liste déroulante d’afficher sa fenêtre contextuelle.
- setEnabled(boolean b) : active la liste déroulante afin que les éléments puissent être sélectionnés.
- removeItem(Object anObject) : supprime un élément de la liste des éléments.
- removeAllItems() : supprime tous les éléments de la liste.
- removeActionListener(ActionListener l) : supprime ActionListener.
- isPopupVisible() : détermine la visibilité du popup.
- getItemCount() : renvoie le nombre des éléments dans la liste.
Exemple:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class ComboBoxExemple extends JFrame implements ItemListener {
// frame
static JFrame frame;
// combobox
static JComboBox combobox;
// label
static JLabel l1, l2;
public static void main(String[] args)
{
// créer un nouvea frame
frame = new JFrame("frame");
// créer un objet
ComboBoxExemple obj = new ComboBoxExemple();
// définir la disposition du frame
frame.setLayout(new FlowLayout());
// tableau de chaînes contenant des langages
String s1[] = { "Java", "PHP", "Python", "C++", "Ruby" };
// créer une case à cocher
combobox = new JComboBox(s1);
// ajouter ItemListener
combobox.addItemListener(obj);
// créer des étiquettes
l1 = new JLabel("Quel est votre langage prefere? ");
l2 = new JLabel("[Java]");
// définir la couleur du texte
l2.setForeground(Color.blue);
// créer un nouveau panneau
JPanel p = new JPanel();
// ajouter combobox et labels au panneau
p.add(l1);
p.add(combobox);
p.add(l2);
// ajouter le panneau au frame
frame.add(p);
// définir la taille du frame
frame.setSize(400, 200);
frame.show();
}
public void itemStateChanged(ItemEvent e)
{
// si l'état du combobox est modifiée
if (e.getSource() == combobox) {
l2.setText(" ["+combobox.getSelectedItem()+"]");
}
}
}
Sortie:

🚀 Boostez votre productivité avec les meilleurs outils Web → Essayez-les

