【问题标题】:A method that returns the object last in focus?返回最后一个焦点的对象的方法?
【发布时间】:2015-08-06 11:07:39
【问题描述】:

所以我有几个 JButtons 和数百个 JTextFields 整个程序(CardLayout,别担心)。我希望这些JButtons 找到最后一个焦点的JTextField,所以当单击按钮时,它将该字段的文本设置为该按钮的任何内容。

我在JTextFields 上尝试过getFocusOwner()getMostRecentFocusOwner(),它们是setFocusable(true)

我希望在某个地方已经有一种可用的方法。

【问题讨论】:

标签: java focus jbutton jtextfield


【解决方案1】:

我们在 FocusEvent 中有 getOppositeComponent()。

它返回涉及此焦点更改的其他组件。对于 FOCUS_GAINED 事件,这是失去焦点的组件。对于 FOCUS_LOST 事件,这是获得焦点的组件。如果本机应用程序、不同 VM 或上下文中的 Java 应用程序或没有其他组件发生此焦点更改,则返回 null。 有关详细信息,请参阅文档。

在 TextField 的焦点丢失中,将文本字段分配给某个变量,然后在按钮单击事件中使用该变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-05
    • 2021-07-15
    • 2015-06-08
    • 1970-01-01
    • 1970-01-01
    • 2020-03-06
    • 1970-01-01
    相关资源
    最近更新 更多