Обектът на класа JList представлява списък от текстови елементи. Списъкът с текстови елементи може да бъде настроен така, че потребителят да може да избере един или няколко елемента. Той наследява клас JComponent.
javac не се разпознава
Декларация на клас JList
Нека да видим декларацията за класа javax.swing.JList.
public class JList extends JComponent implements Scrollable, Accessible
Често използвани конструктори:
Конструктор | Описание |
---|---|
JList() | Създава JList с празен модел само за четене. |
JList(ary[] listData) | Създава JList, който показва елементите в посочения масив. |
JList(ListModel dataModel) | Създава JList, който показва елементи от посочения ненулев модел. |
Често използвани методи:
Методи | Описание |
---|---|
Невалиден addListSelectionListener(ListSelectionListener слушател) | Използва се за добавяне на слушател към списъка, който да бъде уведомяван при всяка промяна в селекцията. |
int getSelectedIndex() | Използва се за връщане на най-малкия индекс на избрана клетка. |
ListModel getModel() | Използва се за връщане на модела на данни, който съдържа списък с елементи, показани от компонента JList. |
void setListData(Object[] listData) | Използва се за създаване на ListModel само за четене от масив от обекти. |
Пример за 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(); }}
Изход:
как да надстроя java
Java JList Пример с 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(); }}
Изход: