Я пишу приложение scala, используя scala swing. Я могу прослушивать MouseClicked
, чтобы получать уведомления всякий раз, когда щелкают мышью, но как узнать, какая кнопка была нажата. Документация довольно плохая, поэтому я посмотрел в документации Java для MouseEvent
, в котором говорится, что ключ можно получить из поля модификаторов, поэтому я попытался вывести поле модификаторов scala Событие MouseClicked
, которое оказалось целым числом, 0 для щелчка левой кнопкой мыши, кнопки мыши 3 и кнопки мыши 4 и 256 для щелчка правой кнопкой мыши.
Похоже, это сработает, если мне нужно только знать разницу между щелкните левой и правой кнопкой мыши, но могу ли я быть уверен, что все модификаторы работают именно так? В документации ничего не говорится, и, насколько я знаю, на модификаторы могут влиять другие вещи, кроме того, какая кнопка мыши была нажата. Я также хотел бы узнать разницу между левым щелчком и кнопками мыши 3 и 4. Я не думаю, что пользователи ожидают, что они будут делать то же самое, что и щелчок левой кнопкой.
В документации scala есть MouseButtonEvent
, это можно для чего-нибудь использовать? В документации ничего не говорится о том, что он делает.