这里主要写一下工程中遇到的问题,关于Jlist的基本用法可以去差API文档解决。
一、Jlist添加滚动条
DefaultListModel model1 = new DefaultListModel();
model1.addElement("点击选中");
JList list1 = new JList(model1);
// 列表显示20行,超过20行后显示滚动条
list1.setVisibleRowCount(20);
// 单选模式
list1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
JScrollPane ScrollPane1 = new JScrollPane(list1);
ScrollPane1.setBounds(0,0,480,680);
ScrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
二、Jlist点击选中Item
ListSelectionListener里有个方法void valueChanged(ListSelectionEvent e)负责监听ist里的改变选中项的事件,但是它监听了mousedown 和 mouseup 两个事件,也就说每当你点击一个Jlist里的一个Item时会出发两次该事件。因此如果要实现点击一下选中选项那么为Jlist添加MouseListener比较合适。
三、在Jlist没有任何选项被选中时想要得到Jlist中所有的Item
DefaultListModel model = new DefaultListModel();
JList list = new JList(model);
int count = model.getSize();
for(int i=0; i<count; i++)
System.out.println(model.get(i));