http://wm-monitoring.ru/ ')) {alert('Спасибо за то что установили нашу кнопку! =)');} else {alert('Очень жаль! =(');}"> http://wm-monitoring.ru/

Главная Новости

Java - Как отследить левый и правый клик мыши, одновременно? - Stack Overflow на русском

Опубликовано: 06.09.2018

видео java - Как отследить левый и правый клик мыши, одновременно? - Stack Overflow на русском

С нуля до DevOps

Встроенной поддержки обработки одновременного нажатия двух кнопок, судя по всему нет.

Рабочий вариант, как уже написал @MBo: обрабатывать нажатие и отпускание левой и правой кнопки и устанавливать флаг в случае если обе кнопки нажаты одновременно.



Так мы можем отследить как одиночное нажатие так и двойное:

//флаг для отслеживания одновременного нажатия private boolean wereBothButtonsPressed = false; private void onMousePressed(MouseEvent e) { //при нажатии проверяем нажаты ли обе кнопки wereBothButtonsPressed = e.isPrimaryButtonDown() && e.isSecondaryButtonDown(); } private void onMouseReleased(MouseEvent e) { if (e.isPrimaryButtonDown() || e.isSecondaryButtonDown()) { //если какая-то из кнопок нажата, то ничего не делаем return; } if (wereBothButtonsPressed) { //нажаты обе кнопки System.out.prinln("Both buttons"); } else if (e.getButton() == MouseButton.PRIMARY) { //только левая System.out.prinln("Only primary"); } else if (e.getButton() == MouseButton.SECONDARY) { //только правая System.out.prinln("Only secondary"); } }

Есть похожий вопрос на английском ( How to make an event for left & right click at the same time? ) там никто ничего лучшего не предложил.


Google Wave Developer Preview at Google I/O 2009

Карта
rss