我希望在编辑该单元格时释放键时获取JTable
单元格的坐标(行索引和列索引)。我试图这样做:
@Override
public void keyReleased(KeyEvent released) {
JTable tbl = (JTable)(released.getSource());
if (tbl.getCellEditor() != null)
System.out.println(tbl.getSelectedRow()+","+tbl.getSelectedColumn());
}
但是这不会返回正在编辑的单元格的位置(行索引和列索引)。请帮忙。
答案 0 :(得分:3)
在编辑该单元格时释放密钥。
没有意义。在编辑单元格时,编辑器具有焦点。用户也可以使用鼠标将单元格置于编辑模式。
如果您想知道单元格何时开始编辑,可以向PropertyChangeListener
添加JTable
:
//
// Implement the PropertyChangeListener interface
//
@Override
public void propertyChange(PropertyChangeEvent e)
{
// A cell has started/stopped editing
if ("tableCellEditor".equals(e.getPropertyName()))
{
if (table.isEditing())
// code for editing started;
else
// code for editing stopped;
}
}
然后您只需使用getSelected...()
方法获取行/列。