我正在使用JTable
,对于列,我允许多行选择并允许对表进行排序。该表有一列Boolean
(复选框)。如果未对所有行选择check-box
,并且我按任何列对表进行排序,那么我可以正确选择行。但是当选择了至少一个复选框并对表进行排序时,行选择不起作用,即如果我点击i
- 行,则会选择其他行。但也有一种情况是,当选择了一个或多个复选框但我没有按任何列对表格进行排序时,我能够正确选择行。可能是排序机制。我可以在列标题上看到two
箭头,它应该只有一个。我已附上截图。我想如果不知何故我可以单箭头(不知道怎么做)那么我就能得到解决方案。
这就是我允许多选的方式:
variantTable.setRowSelectionAllowed(true);
variantTable.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
模型如下:
mVariantTable.setModel(new DefaultTableModel(
new Object[][] {
{null, null, null, null},
{null, null, null, false},
},
new String[] {
"a", "v", "c", "Zugeordnet"
}
) {
Class<?>[] columnTypes = new Class<?>[] {
String.class, String.class, String.class, Boolean.class
};
@Override
public Class<?> getColumnClass(int columnIndex) {
return columnTypes[columnIndex];
}
});
下面的截图: