Клавиша с двойным нажатием в Java

309
20 февраля 2017, 16:43

Возможно ли в Java сделать так, чтобы при нажатии на одну и ту же клавишу клавиатуры происходили разные действия. Например при нажатии клавиши VK_F воспроизводился аудио файл, а при повторном нажатии останавливался. Если возможно, то дайте пожалуйста пример кода.

Answer 1

Объявляешь переменную

 private static boolean runStop = false;

Дальше в if else пишешь нужный код

                  btn.setOnAction((event) -> {
                            if (runStop == false) {
                                runStop = true;
                            //код для запуска
                            } 
                             else {
                                runStop = false;
                                //код для остановки  
                               }
                          }
                       );
Answer 2

Можно так:

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) {
        }
    });
READ ALSO
Как научиться получать данные с сервера в клиентское андроид приложение..?

Как научиться получать данные с сервера в клиентское андроид приложение..?

Хочу сделать приложение для сайтаНо сразу же столкнулся с проблемой

401
программируем звук в Android

программируем звук в Android

Здравствуйте! Написал код для звукаKомпилятор не кричит, все вроде нормально, но только звук почему то не воспроизводится на самом девайсе...

319
Заштриховать область (Java Graphics2D)

Заштриховать область (Java Graphics2D)

Есть нарисованный график, на нём обозначены границы некой области: Подумал, что можно с небольшим шагом сделать параллельные оси y линии,...

457
Зачем нужен класс android.os.AsyncResult и почему он скрыт от разработчиков?

Зачем нужен класс android.os.AsyncResult и почему он скрыт от разработчиков?

Изучая исходники фреймворка и приложений телефонии нашёл использование класса androidos

315