点击多行选择

Multiple row selection on click

我想知道以下情况是否可以用 jtable:

R4 和 R6 是 "sub rows" 并且它们引用 R1,所以每当我点击 R1 时,它应该自动 select R4 和 R6。

是的,这是可能的。这是一个非常基本的 'hacky' 示例,它应该为您提供有关所涉及的方法调用的足够信息。这将 select 行 3 & 5 每当你 select 行 1:

// jt is a JTable defined at class level for handle visibility
jt = new JTable() {
    @Override
    public void valueChanged(ListSelectionEvent e) {
        super.valueChanged(e);
        if(e.getValueIsAdjusting()) return;

        if(jt.getSelectedRow() == 1 && jt.getSelectedRows().length == 1) {
            ListSelectionModel lsm = jt.getSelectionModel();
            lsm.addSelectionInterval(3, 3);
            lsm.addSelectionInterval(5, 5);
        }
    }
};