java jlist_Java JList

Java JList

1 Java JList的介绍

JList类的对象表示文本项的列表。可以设置文本项列表,以便用户可以选择一项或多项。它继承了JComponent类。

2 Java JList的声明

我们来看一下javax.swing.JList类的声明。

public class JList extends JComponent implements Scrollable, Accessible

3 Java JList的构造方法

构造方法

描述

JList()

用空的只读模型创建一个JList。

JList(ary[] listData)

创建一个JList,显示指定数组中的元素。

JList(ListModel dataModel)

创建一个JList,该JList显示来自指定的非null模型的元素。

4 Java JList的方法

方法

描述

Void addListSelectionListener(ListSelectionListener listener)

用于将侦听器添加到列表,每次选择发生更改时都会得到通知。

int getSelectedIndex()

用于返回最小的选定单元格索引。

ListModel getModel()

用于返回保存由JList组件显示的项目列表的数据模型。

void setListData(Object[] listData)

用于从对象数组创建只读ListModel。

5 Java JList的案例1

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

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

}

}

输出结果为:

0edf56f9bc637fce036becc9a585bcf4.png

6 Java JList的案例2

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

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 = "你选择的编程语言是: " + list1.getSelectedValue();

label.setText(data);

}

if(list2.getSelectedIndex() != -1){

data += ", 选择的框架是: ";

for(Object frame :list2.getSelectedValues()){

data += frame + " ";

}

}

label.setText(data);

}

});

}

public static void main(String args[])

{

new ListExample();

}

}

输出结果为:

fbe0cabb04a875365bb730b79781019a.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值