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:

Constructeurs de JComboBox
Description
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:


 

Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *