Objektet för klassen JList representerar en lista med textobjekt. Listan med textobjekt kan ställas in så att användaren kan välja antingen ett objekt eller flera objekt. Den ärver JComponent-klassen.
tjurar vs oxe
JList klassdeklaration
Låt oss se deklarationen för javax.swing.JList-klassen.
public class JList extends JComponent implements Scrollable, Accessible
Vanligt använda konstruktörer:
Konstruktör | Beskrivning |
---|---|
JList() | Skapar en JList med en tom, skrivskyddad modell. |
JList(ary[] listData) | Skapar en JList som visar elementen i den angivna arrayen. |
JList(ListModel dataModel) | Skapar en JList som visar element från den specificerade, icke-nullmodellen. |
Vanligt använda metoder:
Metoder | Beskrivning |
---|---|
Void addListSelectionListener(ListSelectionListener lyssnare) | Den används för att lägga till en lyssnare i listan, för att meddelas varje gång en ändring av urvalet sker. |
int getSelectedIndex() | Den används för att returnera det minsta markerade cellindexet. |
ListModel getModel() | Den används för att returnera datamodellen som innehåller en lista över objekt som visas av JList-komponenten. |
void setListData(Object[] listData) | Den används för att skapa en skrivskyddad ListModel från en array av objekt. |
Exempel på 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(); }}
Produktion:
vad är 25 av 100
Java JList Exempel med 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(); }}
Produktion: