Das Objekt der JList-Klasse stellt eine Liste von Textelementen dar. Die Liste der Textelemente kann so eingerichtet werden, dass der Benutzer entweder ein Element oder mehrere Elemente auswählen kann. Es erbt die JComponent-Klasse.
Was ist ein Stack in Java?
Deklaration der JList-Klasse
Sehen wir uns die Deklaration für die Klasse javax.swing.JList an.
public class JList extends JComponent implements Scrollable, Accessible
Häufig verwendete Konstruktoren:
Konstrukteur | Beschreibung |
---|---|
JList() | Erstellt eine JList mit einem leeren, schreibgeschützten Modell. |
JList(ary[] listData) | Erstellt eine JList, die die Elemente im angegebenen Array anzeigt. |
JList(ListModel dataModel) | Erstellt eine JList, die Elemente aus dem angegebenen Nicht-Null-Modell anzeigt. |
Häufig verwendete Methoden:
Methoden | Beschreibung |
---|---|
Void addListSelectionListener(ListSelectionListener-Listener) | Es wird verwendet, um der Liste einen Listener hinzuzufügen, der jedes Mal benachrichtigt wird, wenn eine Änderung an der Auswahl auftritt. |
int getSelectedIndex() | Es wird verwendet, um den kleinsten ausgewählten Zellenindex zurückzugeben. |
ListModel getModel() | Es wird verwendet, um das Datenmodell zurückzugeben, das eine Liste der von der JList-Komponente angezeigten Elemente enthält. |
void setListData(Object[] listData) | Es wird verwendet, um ein schreibgeschütztes ListModel aus einem Array von Objekten zu erstellen. |
Java JList-Beispiel
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(); }}
Ausgabe:
Mehrzeilige Javascript-Zeichenfolge
Java JList-Beispiel mit 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(); }}
Ausgabe: