Objekt triedy JList predstavuje zoznam textových položiek. Zoznam textových položiek je možné nastaviť tak, aby si používateľ mohol vybrať buď jednu položku alebo viacero položiek. Zdedí triedu JComponent.
selénový tutoriál java
Deklarácia triedy JList
Pozrime sa na deklaráciu pre triedu javax.swing.JList.
public class JList extends JComponent implements Scrollable, Accessible
Bežne používané konštruktory:
Konštruktér | Popis |
---|---|
JList() | Vytvorí JList s prázdnym modelom len na čítanie. |
JList(ary[] listData) | Vytvorí JList, ktorý zobrazí prvky v zadanom poli. |
JList(ListModel dataModel) | Vytvorí JList, ktorý zobrazuje prvky zo zadaného, nenulového modelu. |
Bežne používané metódy:
Metódy | Popis |
---|---|
Void addListSelectionListener(ListSelectionListener poslucháč) | Používa sa na pridanie poslucháča do zoznamu, ktorý má byť upozornený pri každej zmene výberu. |
int getSelectedIndex() | Používa sa na vrátenie najmenšieho vybraného indexu bunky. |
ListModel getModel() | Používa sa na vrátenie dátového modelu, ktorý obsahuje zoznam položiek zobrazených komponentom JList. |
void setListData(Object[] listData) | Používa sa na vytvorenie modelu ListModel len na čítanie z poľa objektov. |
Prí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ýkon:
java má ďalšie
Prí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ýkon: