我想让一个 Java swing 按钮“不可聚焦”。该按钮根本不应该接收焦点,但应该能够接收鼠标点击。
我想到了以下选项,但这些要么不能完全解决我的问题,要么看起来不优雅。还有其他/更好/建议的选择吗?
- 当按钮获得焦点时立即将焦点移动到下一个组件(但是如果按钮是 UI 上除标签之外的唯一组件,我该怎么办?)
- 将另一个不可聚焦的组件实现为按钮(带有鼠标事件、边框的标签......)(这对我来说看起来不太优雅)
- 创建一个覆盖键盘事件的匿名按钮实现,使其不响应键盘事件(这不能解决焦点问题,但对我来说还可以,因为问题的根源是避免意外的键盘点击。我会仅当根本没有选项时才这样做,但即便如此,更喜欢选项 2)