JFrame Keylistener принимает данные от пользователя - PullRequest
0 голосов
/ 10 января 2020

Я добавил KeyListener к JFrame

String1: Отображение кодирования: _ _ d _ ng

Если я нажму c, это должно заполнить пробелы, иначе это следует подождать, пока я нажму другую клавишу.

Мне нужно дать только 4 шанса пользователю.

Я встроил это в консоль, но в консоли я мог бы добавить сканер внутри al oop.

Как мне сделать это в JFrame?

JTextField textField = new JTextField();
    JLabel keylabel = new JLabel("Press any key");

    @Override
    public void keyPressed(KeyEvent e) {
         int keycode = e.getKeyCode();
         if(keycode == KeyEvent.VK_C)
             keylabel.setText("You pressed correct");
         else
             keylabel.setText("You pressed wrong");

    }

Приведенный выше код, который я использовал, я не понимаю, как повторить этот код для всех пробелов.

1 Ответ

0 голосов
/ 13 января 2020

Я бы предложил что-то вроде этого:

JTextField textField = new JTextField();
JLabel keylabel = new JLabel("Press any key");
private int tries = 10;

@Override
public void keyPressed(KeyEvent e) {
     keylabel.setText("You pressed " + (e.getKeyCode() == KeyEvent.VK_C ? "correct" : "wrong"));
     if (--tries <= 0) {
         keylabel.setText("No tries left");
         textField.setEnabled(false);
     }
}
...