我想进行列表选择,这样当我第一次选择一个项目之后,当我选择第二个项目时,它将被选中,然后两者都应该被选中,第一个选择应保持不变。我已将列表选择模式设置为多个选择。但是仍然必须按ctrl
键来做这件事。 我想在不按ctrl
键的情况下执行此操作。
如何选择保留列表项?
以下是我设置选择模式的行:
list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
修改 的 由 StanislavL 建议我尝试了以下但是它对我不起作用。
DefaultListSelectionModel model = new DefaultListSelectionModel();
model.removeSelectionInterval(0, 2);
user_list.setSelectionModel(model);
答案 0 :(得分:4)
多选需要按 Ctrl 键是一个众所周知的惯例。与使用 Shift 键选择一系列值相同。
就个人而言,我永远不会花费精力改变这种行为,因为它会让那些已经熟悉其他应用程序的用户感到困惑。
答案 1 :(得分:1)
尝试替换列表中的ListSelectionModel。使用
public void setSelectionModel(ListSelectionModel selectionModel)
您可以使用DefaultListSelectionModel并覆盖
public void removeSelectionInterval(int index0, int index1)
如果已经选择了项目,则调用super.remove()。