【问题标题】:Get correct editing behaviour in JTable using java DefaultCellEditor使用 java DefaultCellEditor 在 JTable 中获得正确的编辑行为
【发布时间】:2010-10-20 15:36:28
【问题描述】:

您可以通过单击或使用光标键/选项卡进入 Jtable 中的单元格。使用 defaultCellEditor 和 JtextField 如果您使用光标键进入,插入符号将放在现有文本字段的末尾,而如果您双击该字段,它将突出显示最后一个单词。

虽然电子表格的工作方式(例如 Open Office Calc)似乎与双击的方式相同,但如果您进入字段并开始编辑,则该字段将被清除,并且按下的第一个字符将成为该字段中的第一个值,并且以此类推。

我希望我的应用以与电子表格相同的方式工作。通过继承 DefaultCellEditor 并添加

final Caret caret = editField.getCaret();
    caret.setDot(0);
    editField.setText("");

我可以让它在切换时按我想要的方式工作,但它也会在双击时清除我不想要的字段。

请问如何确定单元格编辑是由键盘还是鼠标触发的?

【问题讨论】:

    标签: java swing jtable


    【解决方案1】:

    也重写 isCellEditable(EventObject anEvent) 方法。

    这样您就可以捕获将触发(或不触发)表格编辑的事件并按照您想要的方式进行操作

    【讨论】:

      猜你喜欢
      • 2014-10-11
      • 2017-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-22
      • 1970-01-01
      • 2015-11-14
      • 2010-09-27
      相关资源
      最近更新 更多