Разрешение родительскому процессу обрабатывать событие мыши, если событие не было использовано дочерним элементом - PullRequest
1 голос
/ 08 октября 2010

У меня есть этот кадр:

alt text

Вот что происходит:

  1. Когда я нахожусь над панелью Розоватый , панель прокрутки работает очень хорошо.
  2. При наведении мыши на Темно-серый JTextArea панель прокрутки не получает событие.

В общем, мой вопрос: как я могу убедиться, что родитель компонента получает событие, если компонент не обработал это конкретное событие, даже если у компонента есть прослушиватель и он включен?

Возможно, подойдет конкретный пример.

Вы можете видеть калькулятор, калькулятор рисуется на панели масштабируемых изображений и может увеличивать и уменьшать масштаб с помощью события Ctrl + Wheel, но когда я не нажимаю Ctrl, мне бы хотелось, чтобы панель прокрутки получала событие и прокрутите порт просмотра. (Я думаю, что это подводит итог)

Адам.

Ответы [ 2 ]

1 голос
/ 08 октября 2010

Хотя и не совсем "аккуратный", мой ответ на этот вопрос может быть адаптирован для того, что вы хотите делать.

Вместо MOUSE_EVENT_MASK вы бы использовали AWTEvent.MOUSE_WHEEL_EVENT_MASK и передать событие на полосу прокрутки, когда состояние управляющей клавиши является подходящим.

(Если повезет, кто-то опубликует «настоящий» механизм для пересылки события в родительский компонент).

0 голосов
/ 25 апреля 2011

Как я описал в своем комментарии, и он отлично работает ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...