Objekt klase JList predstavlja popis tekstualnih stavki. Popis tekstualnih stavki može se postaviti tako da korisnik može izabrati jednu ili više stavki. Nasljeđuje klasu JComponent.
registarska memorija
Deklaracija klase JList
Pogledajmo deklaraciju za klasu javax.swing.JList.
public class JList extends JComponent implements Scrollable, Accessible
Često korišteni konstruktori:
Konstruktor | Opis |
---|---|
JList() | Stvara JList s praznim modelom samo za čitanje. |
JList(ary[] listData) | Stvara JList koji prikazuje elemente u navedenom nizu. |
JList(ListModel dataModel) | Stvara JList koji prikazuje elemente iz navedenog modela koji nije nula. |
Često korištene metode:
Metode | Opis |
---|---|
Void addListSelectionListener(slušatelj ListSelectionListener) | Koristi se za dodavanje slušatelja na popis, koji će biti obaviješten svaki put kada dođe do promjene odabira. |
int getSelectedIndex() | Koristi se za vraćanje najmanjeg indeksa odabrane ćelije. |
ListModel getModel() | Koristi se za vraćanje podatkovnog modela koji sadrži popis stavki koje prikazuje komponenta JList. |
void setListData(Object[] listData) | Koristi se za stvaranje ListModela samo za čitanje iz niza objekata. |
Primjer 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(); }}
Izlaz:
objekt u java programiranju
Java JList primjer s ActionListenerom
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(); }}
Izlaz: