L'objecte de la classe JList representa una llista d'elements de text. La llista d'elements de text es pot configurar de manera que l'usuari pugui triar un element o diversos elements. Hereta la classe JComponent.
què es connecta automàticament a java
Declaració de classe JList
Vegem la declaració de la classe javax.swing.JList.
public class JList extends JComponent implements Scrollable, Accessible
Constructors d'ús habitual:
Constructor | Descripció |
---|---|
JList() | Crea una JList amb un model buit, només de lectura. |
JList(ary[] listData) | Crea una JList que mostra els elements de la matriu especificada. |
JList(ListModel dataModel) | Crea una JList que mostra elements del model especificat, no nul. |
Mètodes d'ús habitual:
Mètodes | Descripció |
---|---|
Void addListSelectionListener (oient de ListSelectionListener) | S'utilitza per afegir un oient a la llista, per ser notificat cada vegada que es produeix un canvi a la selecció. |
int getSelectedIndex() | S'utilitza per retornar l'índex de cel·la seleccionat més petit. |
ListModel getModel() | S'utilitza per retornar el model de dades que conté una llista d'elements que mostra el component JList. |
void setListData(Objecte[]listData) | S'utilitza per crear un ListModel de només lectura a partir d'una matriu d'objectes. |
Exemple de Java JList
import javax.swing.*; public class ListExample { ListExample(){ JFrame f= new JFrame(); DefaultListModel l1 = new DefaultListModel(); l1.addElement('Item1'); l1.addElement('Item2'); l1.addElement('Item3'); l1.addElement('Item4'); JList list = new JList(l1); list.setBounds(100,100, 75,75); f.add(list); f.setSize(400,400); f.setLayout(null); f.setVisible(true); } public static void main(String args[]) { new ListExample(); }}
Sortida:
pseudocodi java
Exemple de Java JList amb ActionListener
import javax.swing.*; import java.awt.event.*; public class ListExample { ListExample(){ JFrame f= new JFrame(); final JLabel label = new JLabel(); label.setSize(500,100); JButton b=new JButton('Show'); b.setBounds(200,150,80,30); final DefaultListModel l1 = new DefaultListModel(); l1.addElement('C'); l1.addElement('C++'); l1.addElement('Java'); l1.addElement('PHP'); final JList list1 = new JList(l1); list1.setBounds(100,100, 75,75); DefaultListModel l2 = new DefaultListModel(); l2.addElement('Turbo C++'); l2.addElement('Struts'); l2.addElement('Spring'); l2.addElement('YII'); final JList list2 = new JList(l2); list2.setBounds(100,200, 75,75); f.add(list1); f.add(list2); f.add(b); f.add(label); f.setSize(450,450); f.setLayout(null); f.setVisible(true); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String data = ''; if (list1.getSelectedIndex() != -1) { data = 'Programming language Selected: ' + list1.getSelectedValue(); label.setText(data); } if(list2.getSelectedIndex() != -1){ data += ', FrameWork Selected: '; for(Object frame :list2.getSelectedValues()){ data += frame + ' '; } } label.setText(data); } }); } public static void main(String args[]) { new ListExample(); }}
Sortida: