Возможно ли в Java сделать так, чтобы при нажатии на одну и ту же клавишу клавиатуры происходили разные действия. Например при нажатии клавиши VK_F воспроизводился аудио файл, а при повторном нажатии останавливался. Если возможно, то дайте пожалуйста пример кода.
Объявляешь переменную
private static boolean runStop = false;
Дальше в if else пишешь нужный код
btn.setOnAction((event) -> {
if (runStop == false) {
runStop = true;
//код для запуска
}
else {
runStop = false;
//код для остановки
}
}
);
Можно так:
JTextField textField = new JTextField(20);
textField.addKeyListener(new KeyListener() {
private boolean isPlayed = false;
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_F) {
if (isPlayed) {
// выключить
} else {
// включить
}
isPlayed = !isPlayed;
}
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
});
Сборка персонального компьютера от Artline: умный выбор для современных пользователей