选择列表中的所有项目

时间:2013-10-14 22:56:02

标签: java swing list

我正在使用Java Swing List,我想使用jCheckBox选择其所有值或项目。我试着在谷歌搜索一些答案,我几乎找不到。

我希望我能从这里得到答案。

感谢。

编辑:

在我的挥杆列表中,我有这些项目,例如:

Item 1
Item 2
Item 3

我的复选框标签为“Select All”。

所以我想要的是当选中/选中复选框时,将立即选择挥杆列表中的所有项目。

2 个答案:

答案 0 :(得分:0)

你想要JList的

“void setSelectedIndices(int [] indices)           将选择更改为给定数组指定的索引集。“

方法。不要忘记激活允许多选的属性还要记得在取消选中该框时取消内容!

祝你好运

答案 1 :(得分:0)

为列表大小创建一个setter和getter。 getter将是setSelectionInterval(start,end);

的终点

JList list = new JList();
private void insertItem(){
DefaultListModel<String> list_model = new DefaultListModel<String>();
String listData[] = {"Fish", "Pork", "Chicken", "Curry"};
for(int i = 0; i < listData.length; i++)
list_model.addElement(listData[i]);
list.setModel(list_model); setListSize(list.size());
}

foodCb.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent evt) {
if(evt.getStateChange() == ItemEvent.SELECTED)
list.setSelectionInterval(0, getListSize());
else
list.clearSelection();
}
});

int list_size = 0; private void setListSize(int size) { list_size = size; }

private void getListSize() { return list_size; }