1

我正在开发一个使用默认 Swing 方法来处理焦点的 Swing 应用程序。焦点没有像我预期的那样工作。

在一种情况下,我有一个称为 .requestFocusInWindow() 的 JTextField 当显示窗口时,JLabel 具有焦点

JLabel 的 Java 6 文档说“因此,它无法获得键盘焦点”。 http://docs.oracle.com/javase/6/docs/api/javax/swing/JLabel.html

但是,我有一个示例应用程序,它显示 JLabel 接收焦点,并且 KeyboardFocusManager.getFocusOwner() 返回该组件。(http://github.com/akinsgre/swingStarter)

该类的代码是https://raw.github.com/akinsgre/swingStarter/master/src/main/java/test/HelloWorldSwing.java

任何人都可以帮助我理解或解释我所缺少的吗?

4

1 回答 1

1

我认为您需要将标签与文本字段相关联。所以尝试使用 setLabelFor 方法,看看是否有帮助。

于 2012-06-07T11:15:56.703 回答