Java Swing组件:Jlist学习笔记

欢迎进入Java社区论坛,与200万技术人员互动交流 >>进入

1、 Java中Jlist这个Swing组件是用来展示一组项目,供用户选择的。如下图所示:

可以将要展示的项目放在一个列上,也可以展示在多一个列中。有时候要展示的项目太多,组件的尺寸又不能随意扩大,所以,该组件常常是放在Scroll pane容器中的。

2、 初始化一个Jlist组件:

下面是定义一个Jlist组件,并将它放在JscrollPane容器中的简单代码:

JScrollPane scrollPane = new JScrollPane();

scrollPane.setBounds(65, 65, 122, 144);

String listItem[] = {“苹果”,”香蕉”,”橘子”,”核桃”};

Jlist list = new JList(listItem);

scrollPane.setViewportView(list);

初始化一个Jlist组件时有三种方式,第一种就是上面这个例子:给构造函数传入一个数组型的参数。它的原型是:

public JList(Object[] listData)

第二种方式是向构造函数传入一个Vector型的参数,例如:

Vector<String> v = new Vector<String>();

v.add(“广东”);

v.add(“上海”);

v.add(“深圳”);

Jlist list = new JList(v);

它的原型是:public JList(Vector<?> listData)

如果用上面这两种方式来初始化一个Jlist组件的话,那么其中所显示的各个项目就被固定了,不能在程序中被随意增加或者删除其中任何一个项目了。但是在程序中常常需要动态决定该组件中显示哪些项目,这时就应该指定Jlist的数据模型(list’s model)了。因为在Jlist中所显示的所有项目,都是“存储”在和它捆绑在一起的一个ListModel中的。在程序中要对Jlist中的项目进行诸如增加、删除等操作时,都不是直接在Jlist中进行的,而是在这个ListModel中完成的。可以有两种方式指定该组件的模型,一种是在定义该组件时作为参数传入。它的原型是:

public JList(ListModel dataModel)

另一种是调用方法:setModel来单独设置。如下示例代码:

DefaultListModel listModel = new DefaultListModel();

listModel.addElement(“Debbie Scott”);

listModel.addElement(“Scott Hommel”);

listModel.addElement(“Alan Sommerer”);

Jlist list = new JList(listModel);

这时,可以通过调用数据模型的下列方法来随时改变组件中所显示的项目(当然,这些方法都属于ListModel的方法):

public void add(int index, Object element);//在指定位置插入项目

public void addElement(Object obj);//在最后面插入项目

public boolean removeElement(Object obj);//删除最先匹配的项目

public Object remove(int index);//删除指定位置的项目

public Object get(int index);//获得指定位置的项目

public Object set(int index, Object element);//修改指定位置的项目

[1][2]

你必须百分之百的把自己推销给自己。

Java Swing组件:Jlist学习笔记

相关文章:

你感兴趣的文章:

标签云: