JTable选择其他行并在单击某个单元格时获取其数据

时间:2016-07-19 11:50:24

标签: java swing jtable

我有一个JTable。我想为一个单元格创建一个事件,如果用户点击它,他可以从表格中选择一行或多行,相应的ID将保存在该单元格中。

enter image description here

因此,在示例中,用户将在第2行中单击“单击此处以选择”,然后单击例如第1行和第3行。然后应该用1和3之类的东西覆盖“单击此处选择”单元格:

enter image description here

我想在某种程度上单击单元格创建一个MouseAdapter事件,但我不知道该怎么做。知道我怎么能接近这个吗?

2 个答案:

答案 0 :(得分:1)

ListSelectionListenerMULTIPLE_INTERVAL_SELECTION一起使用。在处理程序中,使用setValueAt()更新表的模型以反映更改。

答案 1 :(得分:0)

是的,你肯定需要使用如下的MouseAdapter(如果条件变为真,你有单元格):

jt.addMouseListener(new java.awt.event.MouseAdapter() {
    @Override
    public void mouseClicked(java.awt.event.MouseEvent evt) {
        int r = jt.rowAtPoint(evt.getPoint());
        int c = jt.columnAtPoint(evt.getPoint());
        if (r >= 0 && c >= 0) {
            ......

        }
    }
});