1 Javapane中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
另一种是调用方法: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);//修改指定位置的项目
3 设置选择模式
Jlist组件有三种选择项目的模式:
第一种是:SINGLE_SELECTION
显然,这种模式下每次只允许选择一个项目。
第二种是:SINGLE_INTERVAL_SELECTION
这种模式下允许连续选择多个项目。
第三种是:MULTIPLE_INTERVAL_SELECTION
它允许间隔开地选择多个项目。这种模式是默认的选择模式,如果你要用上面两种模式,则需要显式地指定:
list.setSelectionModeListSelectionModel.SINGLE_SELECTION);
4 操作用户选择的内容:
public Object getSelectedValue();//可以返回用户选择的项目的内容
public int getSelectedIndex();//返回用户选择的项目的下标,从0开始
public Object[] getSelectedValues()