Как связать нажатие клавиши на клавиатуре с JButton? - Java
Формулировка задачи:
Добрый день, какой нужно использовать метод для "нажатия" кнопки в программе, после нажатия клавиши на клавиатуре?
Решение задачи: «Как связать нажатие клавиши на клавиатуре с JButton?»
textual
Листинг программы
package forumbutton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JButton;
import javax.swing.JFrame;
public class ForumButton extends JFrame {
int count = 0;
ForumButton() {
final JButton but = new JButton("Меня нажали 0 раз(а)");
but.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
count++;
but.setText("Меня нажали " + count + " раз(а)");
}
});
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
KeyListener kl = new KeyAdapter() {
@Override
public void keyTyped(KeyEvent e) {
but.doClick();
}
};
but.addKeyListener(kl);
this.addKeyListener(kl);
this.add(but);
this.pack();
}
public static void main(String[] args) {
new ForumButton();
}
}