JTable不会失去对ENTER和TAB的关注

时间:2012-09-06 04:50:49

标签: java swing focus jtable focusmanager

table.changeSelection(table.getRowCount()-1, 3, false, false);

如上所述设置单元格选择后,选择单元格,如果我输入单元格中的值,则单元格进入编辑模式。但是,输入值后,如果按ENTER或TAB键,单元格仍处于编辑模式。如果我按下其他组件的某个位置,则只有单元格关闭编辑器模式。

如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

  

如上所述设置单元格选择后,将选择单元格,如果我输入单元格中的值,则单元格将进入编辑模式

  1. SSCCE发布关于table.changeSelectionTableCellEditor

  2. 的问题后,更快获得更好的帮助
  3. 必须覆盖stopCellEditing

  4. 取决于您的TableCellEditor

    table.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE);
    

    @Override
    public boolean stopCellEditing() {// @see CellEditor#stopCellEditing()
        fireEditingStopped();
        return true;
    }