Java KeyboardFocusManager.setCurrentKeyboardFocusManager()中断焦点

Java KeyboardFocusManager.setCurrentKeyboardFocusManager()中断焦点,java,swing,focus,Java,Swing,Focus,我重写了DefaultKeyboardFocusManager,为Alt键提供了一些特殊行为。但是,设置此选项后,我注意到在某些文本字段上点击Tab键不起作用 我还尝试在AWT上调用以下命令,但这仍然显示了断开选项卡的行为: setCurrentKeyboardFocusManager(新的DefaultKeyboardFocusManager()) 为什么设置当前的键盘焦点管理器会产生如此糟糕的效果?您编写了一些自定义代码,但现在出现了问题?这里只是一个猜测,但也许问题出在你的代码上 如果您需

我重写了DefaultKeyboardFocusManager,为Alt键提供了一些特殊行为。但是,设置此选项后,我注意到在某些文本字段上点击Tab键不起作用

我还尝试在AWT上调用以下命令,但这仍然显示了断开选项卡的行为:

setCurrentKeyboardFocusManager(新的DefaultKeyboardFocusManager())


为什么设置当前的键盘焦点管理器会产生如此糟糕的效果?

您编写了一些自定义代码,但现在出现了问题?这里只是一个猜测,但也许问题出在你的代码上


如果您需要更多帮助,请发布您的

我也遇到了这个问题。在开发自定义KeyboardFocusManager时,我注意到,甚至调用:

KeyboardFocusManager.setCurrentKeyboardFocusManager(new DefaultKeyboardFocusManager());
会改变行为


似乎有一些早期的初始化正在进行,在我的例子中,修复方法是在显示任何UI资源之前设置KeyboardFocusManager。我在应用程序的main()函数顶部执行了此操作,然后KeyboardFocusManger按预期工作(默认和自定义的)。

当您点击断开的文本字段上的选项卡时会发生什么?另外,当你不玩弄键盘管理器的时候,你能确认文本字段按预期工作吗?我想我的解释不清楚。我创建了一个CustomKeyboardFocusManager,它覆盖了我的系统正在使用的默认设置。和您一样,我也是从调试自定义代码开始的。但是,我注意到,即使将键盘焦点管理器显式设置为新的DefaultKeyboardFocusManager,也会出现同样的问题。这对我来说意味着设置焦点管理器的行为有些我不知道的地方。