Java Swing JTable以编程方式选择多行

Ant*_*lev 5 java swing row jtable selection

我有一个多行的JTable,每一行都通过散点图上的Point显示.我要做的是当在散点图上选择给定点时,我必须将此选择与JTable中相应行的选择相关联.

我有一个代表的Integer,我必须强调哪一行.

我尝试的是:

    JTable table = new JTable();
...
...// a bit of code where I have populated the table
...
   table.setRowSelectionInterval(index1,index2);
Run Code Online (Sandbox Code Playgroud)

所以这里的问题是这个方法选择给定范围内的所有行[index1,index2].我想选择例如行1,15,28,188等.

你是怎样做的?

Rus*_*ser 13

要仅选择一行,请将其作为开始和结束索引传递:

table.setRowSelectionInterval(18, 18);
Run Code Online (Sandbox Code Playgroud)

或者,如果要选择多个非连续索引:

ListSelectionModel model = table.getSelectionModel();
model.clearSelection();
model.addSelectionInterval(1, 1);
model.addSelectionInterval(18, 18);
model.addSelectionInterval(23, 23);
Run Code Online (Sandbox Code Playgroud)

或者,您可能会发现实现自己的子类ListSelectionModel并使用它来跟踪表和散点图上的选择是一个更清晰的解决方案,而不是监听散点图并强制表匹配.