logo

Java JList

Objekt třídy JList představuje seznam textových položek. Seznam textových položek lze nastavit tak, aby si uživatel mohl vybrat buď jednu položku, nebo více položek. Dědí třídu JComponent.

šakal vs vlk

Deklarace třídy JList

Podívejme se na deklaraci třídy javax.swing.JList.

 public class JList extends JComponent implements Scrollable, Accessible 

Běžně používané konstruktory:

Konstruktér Popis
JList() Vytvoří JList s prázdným modelem pouze pro čtení.
JList(ary[] listData) Vytvoří JList, který zobrazí prvky v zadaném poli.
JList(ListModel dataModel) Vytvoří JList, který zobrazí prvky ze zadaného, ​​nenulového modelu.

Běžně používané metody:

Metody Popis
Void addListSelectionListener(ListSelectionListener posluchač) Používá se k přidání posluchače do seznamu, aby byl upozorněn pokaždé, když dojde ke změně výběru.
int getSelectedIndex() Slouží k vrácení nejmenšího indexu vybrané buňky.
ListModel getModel() Používá se k návratu datového modelu, který obsahuje seznam položek zobrazených komponentou JList.
void setListData(Object[] listData) Používá se k vytvoření ListModelu pouze pro čtení z pole objektů.

Příklad 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(); }} 

Výstup:

zakázat vývojářský režim
JAVA Jlist 1

Příklad Java JList s 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(); }} 

Výstup:

JAVA Jlist 2