来自KeyBinding的操作不会在JTable单元上执行

时间:2013-06-24 17:47:49

标签: java swing key-bindings tablecellrenderer nimbus

我有一个问题,因为我可以在没有焦点的情况下编辑单元格,但是当我按下单元格中的绑定键(“Enter”)时,不会执行操作。

don't execute

但是当焦点有效时,动作就会正确执行。

execute

我只想为该特定单元格添加键绑定(row,col),因此我将其添加到渲染中的文本字段中。

可能是我做坏事。

1 个答案:

答案 0 :(得分:2)

当你从一个单元格到另一个单元格的焦点仍然在桌面上时。只有在用鼠标双击或用键盘使用F2时才会调用编辑器。在编辑单元格时,文本字段(默认编辑器)具有焦点。

如果您开始在单元格上键入文本,则会将该文本添加到单元格中,但我认为默认行为是将焦点保留在表格中。但是,我认为您可以在创建表时使用以下内容更改默认值:

table.setSurrendersFocusOnKeystroke(true);