Стрелка вправо по умолчанию для ввода ключа Jtable

Я кодирую приложение в качели, и в Jtable мне нужно, чтобы поведение по умолчанию переходило от стрелки вправо к клавише ввода, перемещаясь в правую ячейку при нажатии клавиши ввода.

Я видел, как переопределить поведение ввода по умолчанию с помощью этого метода:

private void createKeybindings(JTable table) {
    table.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), "Enter");
        table.getActionMap().put("Enter", new AbstractAction() {
            @Override
            public void actionPerformed(ActionEvent ae) {
            }
        });
    }

Но я не знаю, как передать поведение клавиши со стрелкой вправо для ввода в actionPerfomed, для перемещения вправо нажмите клавишу ввода. Есть идеи?

Спасибо


person Ialberquilla    schedule 09.01.2015    source источник


Ответы (1)


Не переопределяйте поведение клавиши Enter по умолчанию.

Просто поделитесь действием со стрелкой вправо с помощью клавиши Enter:

Базовый код для совместного использования действия с другим нажатием клавиши:

KeyStroke existingKeyStroke = KeyStroke.getKeyStroke("RIGHT");
KeyStroke addedKeyStroke = KeyStroke.getKeyStroke("ENTER");
InputMap im = component.getInputMap(...);
im.put(addedKeyStroke, im.get(existingKeyStroke));
person camickr    schedule 09.01.2015