我读到requestFocus()
有时会失败,因为它是基于平台的。
一般的经验法则是始终使用requestFocusInWindow()
吗?
顺便说一句,我的应用程序是专为macOS开发的。
答案 0 :(得分:0)
我读到requestFocus()有时会失败,因为 基于平台的。
是的。这是对的。 From Java Docs the requestFocus()
请注意,不建议使用此方法,因为它的行为 与平台有关。相反,我们建议使用 requestFocusInWindow(boolean)。
由于不推荐依赖平台,因此建议您在Linux中构建,并且不会在Windows中按预期运行。
requestFocusInWindow()
此方法的焦点行为可以统一实现 平台,因此强烈建议开发人员使用此平台 尽可能在requestFocus上使用方法。依赖的代码 requestFocus对不同的对象可能表现出不同的焦点行为 平台。
我应该始终使用requestFocusInWindow()而不是requestFocus()吗?
这取决于。如果要让您的应用仅在特定的操作系统上运行,请使用requestFocus()
;如果要成为多平台,请使用requestFocusInWindow()
如有疑问,请务必进行证证。