Java JLabel应该无法接收焦点。。但确实如此?
我正在开发一个Swing应用程序,它使用默认的Swing方法来处理焦点。“专注”并不像我预期的那样有效 在一种情况下,我有一个JTextField,当窗口显示时,我调用.requestFocusInWindow(),而JLabel有焦点 JLabel的Java6文档说“因此,它无法获得键盘焦点。” 但是,我有一个示例应用程序,它显示了一个JLabel接收焦点和KeyboardFocusManager。getFocusOwner()返回该组件。(http://github.com/akinsgre/swingStarter) 该类的代码是Java JLabel应该无法接收焦点。。但确实如此?,java,swing,focusmanager,Java,Swing,Focusmanager,我正在开发一个Swing应用程序,它使用默认的Swing方法来处理焦点。“专注”并不像我预期的那样有效 在一种情况下,我有一个JTextField,当窗口显示时,我调用.requestFocusInWindow(),而JLabel有焦点 JLabel的Java6文档说“因此,它无法获得键盘焦点。” 但是,我有一个示例应用程序,它显示了一个JLabel接收焦点和KeyboardFocusManager。getFocusOwner()返回该组件。(http://github.com/akinsgre
有人能帮我理解或解释我遗漏了什么吗?我认为您需要将标签与文本字段关联起来。因此,请尝试使用setLabelFor方法,看看这是否有帮助。我认为您需要将标签与文本字段关联起来。因此,请尝试使用setLabelFor方法,看看这是否有帮助。我们大多数人不会去未知站点,尤其是未来的读者,为了更好地帮助他们,请尽快用,JLabel和一个可聚焦的JComponent组件,例如JTextField,演示您的聚焦和聚焦。不知道为什么JLabel会获得聚焦,但会对您的其他问题提出建议。javadoc for建议不要使用这种方法,因为它依赖于平台,并且尽可能使用。mKorbel:我以为我正在这样做。Github repo(未知?)是一个maven项目,只有一个类文件。但是好啊类文件就在这里(链接到源代码不是比内联粘贴代码更好吗)?谢谢Danny。我在源代码中使用requestFocusInWindow。但这并没有给我任何不同的结果。“我有一个JTextField,我调用了.requestFocus()”,这不是
HelloWorldSwing
中说明label.requestFocusInWindow()的行所建议的代码>我们大多数人都不会去未知的仓库,特别是对于未来的读者,为了更好地帮助他们更快地编辑您的问题,请使用an、JLabel和一个可聚焦的JComponent,例如JTextField,演示您的聚焦和聚焦。我们不知道为什么JLabel会获得聚焦,但可以为您的其他问题提供建议。javadoc for建议不要使用这种方法,因为它依赖于平台,并且尽可能使用。mKorbel:我以为我正在这样做。Github repo(未知?)是一个maven项目,只有一个类文件。但是好啊类文件就在这里(链接到源代码不是比内联粘贴代码更好吗)?谢谢Danny。我在源代码中使用requestFocusInWindow。但这并没有给我任何不同的结果。“我有一个JTextField,我调用了.requestFocus()”,这不是HelloWorldSwing
中说明label.requestFocusInWindow()的行所建议的代码>谢谢比尔,这不会改变你的行为。JLabel仍然可以聚焦。我可以通过使用setFocusable(false)来避免这个问题。。这仍然不清楚为什么文件似乎不同意JLabelhanks法案的行为,该法案没有改变行为。JLabel仍然可以聚焦。我可以通过使用setFocusable(false)来避免这个问题。。这仍然不清楚为什么文档似乎不同意JLabel的行为