跟踪焦点问题(JTabbedPane)
我想跟踪 Java 应用程序中所有组件的焦点。我注册了一个适用于大多数组件的方法,但它不适用于更改选项卡。代码如下:
FocusManager.getCurrentManager().addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
System.out.println(evt.getPropertyName() + " " + evt.getNewValue());
}
}
如果我更改 JTabbedPane 中的选项卡,将不会导致打印消息。我怀疑这是由于 JTabbedPane 焦点未更改(因为单击不同的选项卡可能意味着它仍然属于父 JTabbedPane)。
是否有解决方法,或者有人知道 Java 中跟踪焦点更改的保存方法也适用于正在更改的选项卡?
干杯, 最大限度
I'd like to track the focus for all components in my Java application. I registered a method which works for most of the components, but it does not work for changing tabs. Here's the code:
FocusManager.getCurrentManager().addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
System.out.println(evt.getPropertyName() + " " + evt.getNewValue());
}
}
If I change a tab in a JTabbedPane, it will not cause a message to be printed. I suspect that this is due to the JTabbedPane focus not being changed (as clicking on a different tab may mean that it still belongs to the parent JTabbedPane).
Is there a workaround for this or does anyone know of a save method to track focus changes in Java that works also for tabs being changed?
Cheers,
Max
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以将 ChangeListener 添加到选项卡式窗格以侦听选项卡中的更改。
You can add a ChangeListener to the tabbed pane to listen for changes in tabs.