перенаправление событий мыши на скрытую панель в Java - PullRequest
3 голосов
/ 17 января 2011

Я написал программу для увеличения части апплета, используя стеклянную панель апплета.Чтобы сделать это, я, конечно, использую аффинное преобразование для масштабирования визуализируемого содержимого панели содержимого, прежде чем рисовать его на стеклянной панели.Однако, поскольку события мыши должны быть масштабированы обратно с помощью другого преобразования, чтобы быть в нужном месте, я должен перехватить их на стеклянной панели и преобразовать координаты.Однако после этого я не могу найти способ перенаправить события на панель содержимого, поскольку она закрыта стеклянной панелью.Сначала я попробовал метод Component.dispatchEvent (AWTEvent), но, похоже, он игнорировал любые события, которые я попытался бы переслать.У меня был некоторый успех при извлечении компонентов вручную и вызове методов каждого mouseListener и mouseMotionListener, однако эти результаты в лучшем случае ошибочны.Существует ли более стандартный способ отправки событий компоненту?

1 Ответ

1 голос
/ 17 января 2011

Попробуйте следующее:

Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(theEvent)

Я сам не пробовал, я думаю, это должно сработать. По крайней мере, насколько я понимаю, это инструменты тестирования пользовательского интерфейса используют этот метод.

Кстати, как не реализована лупа? Использование робота?

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