Код | if(e.getKeyCode() >= KeyEvent.VK_0 && e.getKeyCode() <= KeyEvent.VK_9 || e.getKeyCode() >= KeyEvent.VK_NUMPAD0 && e.getKeyCode() <= KeyEvent.VK_NUMPAD9) {
JTextComponent editor = (JTextComponent) jTable.getEditorComponent(); editor.addKeyListener ( new java.awt.event.KeyAdapter() { public void keyReleased ( KeyEvent e ) { if ( e.getKeyCode () == KeyEvent.VK_ENTER ) {
jTable.getCellEditor ().stopCellEditing (); // jTable.changeSelection(0,0, false, false); jTable.requestFocus(); } } } ); editor.requestFocus(); // fix if (editor instanceof JTextComponent) { ((JTextComponent)editor).selectAll(); // а это так, бонус... String str = Character.toString(e.getKeyChar()); ((JTextComponent)editor).setText(str); } }
|
Это условие расположено в методе keyReleased() KeyListener'a таблицы. Но у меня он не входит в
e.getKeyCode () == KeyEvent.VK_ENTER это условие. ставлю сообщение и ничего. мертво. |