Java - Как отследить левый и правый клик мыши, одновременно? - Stack Overflow на русском
Опубликовано: 06.09.2018
Встроенной поддержки обработки одновременного нажатия двух кнопок, судя по всему нет.
Рабочий вариант, как уже написал @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
Курсы обмена валют ЦБ РФ
Сегодня | Завтра | ||
USD | 32.62 | 32.50 | |
EUR | 39.90 | 39.92 |
Новости
Виджет для Opera
ТОП-5 обменников
Обменник | Переходов |
Wmchanger | 6 |
E-Market | 5 |
WMtoCash.com | 4 |
Str-Money | 3 |
Hot-Change | 3 |
Наш бонус WebMoney
Получить бонус
Вы можете получить WMR-бонус в размере 0,01-0,10 WMR на свой кошелек 1 раз в сутки | |
Кошелек
|
|
Код
|
|
Обмен Webmoney |