Можно ли разместить дочерний компонент внутри JButton
и сделать его прозрачным для подмножества событий мыши, так что:Добавление дочернего элемента к JButton
- Компонент ребенок получает
MouseMotionEvent
с (так он может реагировать на изменения отображаемого изображения) - щелкнув по-прежнему угнетает
JButton
«за» детского компонентом
Если вы добавляете компонент ребенка к кнопке, но не делаете никаких других изменений, нажав кнопку в области O занятый ребенком, не активирует кнопку.
Я знаю, что это может быть достигнуто путем создания нового класса, который расширяет JButton
, но я бы предпочел использовать дочерний компонент, который уже был написан.
Примечание: это чисто по косметическим соображениям. Детский компонент меняет свой внешний вид. Он не выполняет никаких других действий в ответ на клики. Существует только один Action
, запускаемый кнопкой в обычном режиме.
Я использовал SwingUtilities.convertMouseEvent для передачи нежелательных событий на кнопку, что дает желаемый эффект. – finnw