使JList的行为与ctrl + click相同?

Phi*_*ppe 2 java swing jlist

我正在寻找一种方法来JList总是切换所点击项目的选择而不取消选择其他项目,就像ctrl click工作一样.

ListSelectionModel似乎是正确的方法,但我无法弄清楚那里必须配置什么.

如何使JList的行为click方式与on相同ctrl click

How*_*ard 5

您可以使用以下内容ListSelectionModel:

list.setSelectionModel(new DefaultListSelectionModel(){
    @Override
    public void setSelectionInterval(int start, int end) {
        if (start != end) {
            super.setSelectionInterval(start, end);
        } else if (isSelectedIndex(start)) {
            removeSelectionInterval(start, end);
        } else {
            addSelectionInterval(start, end);
        }
    }
});
Run Code Online (Sandbox Code Playgroud)