La liste JComboBox Java

1 – Création d’un JCombBox Java

Etape 1 : Avant de créer un JComboBox, il va falloire préalablement savoir qu’il s’agit d’un composant Swing.
Pour cela, on doit impérativement créer une fenêtre dotée d’un JPanel en instanciant les classes JFrame et JPanel:

 JFrame f=new JFrame();   JPanel pan=new JPanel();f.setContentPane(pan);    pan.setLayout(null);    f.setSize(250,200);

Etape 2 : Création des éléments qui vont constituer la JComboBox. Les éléments qui vont constituer la JComboBox, peuvent être créer et organiser sur un tableau d’objets

Object[] elements = new Object[]{"élément1", "élément2", "élément3"};

Exemple :

import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class ComboBox1 {public static void main(String[] args) { //- 1) --- création d'une fenêtre JFrame Java    JFrame f=new JFrame();    JPanel pan=new JPanel();    f.setContentPane(pan);    pan.setLayout(null);    f.setSize(250,200);//- 2) --- définir les élément de la liste JComboBoxObject[] elements = new Object[]{"Laptop HP", "Laptop Acer", "Laptop Azus"};    //- 3) --- Création d'une nouvelle liste JComboBox JComboBox<Object> liste = new JComboBox(elements); liste.setBounds(10, 10, 120, 23); pan.add(liste);           f.setVisible(true);

3 – Ajout d’actions à la liste JComboBox

Après avoir créer une liste JomboBox, on peut lui associer une action qui se declenche au moment de la séléction à l’aide de la méthode addActionListener(). L’action ne peut être ajouter que si la séléction est récupérée via la méthode getSelectedItem().

//- 4) --- Ajout d'une action à la séléctionliste.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { e.getSource(); //- 5) --- récupération de la séléction sur une variable du type StringString s=(String) liste.getSelectedItem(); System.out.println("Vous avez séléctionné : "+s); } });

On peut également afficher les résultats sur un JLabel :

Exemple complet :

import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JComboBox;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;public class ComboBox2 {	public static void main(String[] args) {		//- 1) --- define new Window JFrame		   JFrame f=new JFrame();		   JPanel pan=new JPanel();		   f.setContentPane(pan);		   pan.setLayout(null);		   f.setSize(400,300);//- 2) --- Création des éléments de la JComboBox JavaObject[] elements = new Object[]{"Laptop HP", "Laptop Acer", "Laptop Azus"};//- 3) --- Création d'une nouvelle liste JComboBox	JComboBox<String> liste = new JComboBox(elements);	liste.setBounds(10, 10, 120, 23);		pan.add(liste);		//- 4) --- Création d'un  JLabel pour afficher les résultats de la séléction		  JLabel label=new JLabel("View results here !");		  pan.add(label);		  label.setBounds(10,30,250,50);		  //- 5) --- appliquer une action listener à la liste  JComboBox		liste.addActionListener(new ActionListener() {			public void actionPerformed(ActionEvent e) {				e.getSource();				String s=(String) liste.getSelectedItem();				label.setText("Vous avez séléctionné : "+s);				}		});		 f.setVisible(true);	}}

Ce qui affiche après exécution :

Commentaires