Рассмотрите возможность использования javax.swing.Action
-контролируемых компонентов Swing.
Таким образом, вы можете вместо этого отключить действие напрямую с помощью Action.setEnabled
. Его компонент (ы) примет его состояние автоматически. При отключении таким способом компоненты не будут получать MouseEvents.
См. Документы по конструктору JButton(Action)
.