我有一张jTable,如附图
右键单击一行会启动一个jPopup,其中包含一个“Thread Stop”项。
我想通过点击此菜单项
返回行号如何做到这一点?
感谢。
答案 0 :(得分:6)
在显示弹出窗口的MouseListener中,只需通过JTable方法获取行号和列号:
table.addMouseListener(new MouseAdapter() {
@Override
public void mousePressed(MouseEvent e) {
Point p = e.getPoint();
int row = table.rowAtPoint(p);
int col = table.columnAtPoint(p);
System.out.printf("row, col: [%d, %d]%n", row, col);
// show pop-up menu here
}
});
答案 1 :(得分:2)
TableCellEditor
的实施将行作为参数包含在内,但您应该仅在更新TableModel
时采取行动,此处为shown。 TablePopupEditor
是一个相关的例子。