Как я неправильно использую keylistener в этом фрагменте кода?

Я пытаюсь заставить нажатие клавиши ввода перейти в следующее текстовое поле (TextField2) вместо (по умолчанию) нажатия ОК из JOptionPane OK_CANCEL_OPTION.

   JTextField textField1 = new JTextField("");
   JTextField textField2 = new JTextField("");

   JPanel panel = new JPanel(new GridLayout(0,1));

   panel.add(new JLabel ("Check"));
   panel.add(textField1);
   panel.add(new JLabel ("Cash" ));
   panel.add(textField2);
   textField1.addAncestorListener(new SetFocus());
   textField1.addKeyListener(new KeyAdapter() {
    @Override
    public void keyPressed(KeyEvent e) {
        if(e.getKeyCode() == KeyEvent.VK_ENTER){
           textField2.addAncestorListener(new SetFocus());
        }
    }

});

   JOptionPane.showConfirmDialog(null, panel, "Deposit", JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE); 
0
0
17
1

Ответы 1

Используйте textfield2.requestFocus () вместо добавления прослушивателя-предка.

Другие вопросы по теме