logo

Java JList

JList クラスのオブジェクトはテキスト項目のリストを表します。テキスト項目のリストは、ユーザーが 1 つの項目または複数の項目を選択できるように設定できます。 JComponentクラスを継承しています。

NFA を DFA に変換します

JListクラス宣言

javax.swing.JList クラスの宣言を見てみましょう。

 public class JList extends JComponent implements Scrollable, Accessible 

一般的に使用されるコンストラクター:

コンストラクタ 説明
JList() 空の読み取り専用モデルを使用して JList を作成します。
JList(ary[] listData) 指定された配列内の要素を表示する JList を作成します。
JList(リストモデルデータモデル) 指定された null 以外のモデルから要素を表示する JList を作成します。

一般的に使用される方法:

メソッド 説明
Void 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 Jリスト 1

ActionListener を使用した Java JList の例

 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(); }} 

出力:

JAVA Jリスト 2