Java 我应该使用always requestFocusInWindow()而不是requestFocus()?

Java 我应该使用always requestFocusInWindow()而不是requestFocus()?,java,macos,swing,focus,Java,Macos,Swing,Focus,我读到,requestFocus()有时会失败,因为它是基于平台的 一般的经验法则是始终使用requestFocusInWindow() 顺便说一下,我的应用程序是专为macOS开发的 我读到requestFocus()有时会失败,因为它是 基于平台 对。这是正确的 请注意,不鼓励使用此方法,因为其行为 依赖于平台。相反,我们建议使用 requestFocusInWindow(布尔值) 由于不建议在Linux中生成依赖于平台的,因此不会在Windows中按预期运行 requestFocusInW

我读到,
requestFocus()
有时会失败,因为它是基于平台的

一般的经验法则是始终使用
requestFocusInWindow()

顺便说一下,我的应用程序是专为macOS开发的

我读到requestFocus()有时会失败,因为它是 基于平台

对。这是正确的

请注意,不鼓励使用此方法,因为其行为 依赖于平台。相反,我们建议使用 requestFocusInWindow(布尔值)

由于不建议在Linux中生成依赖于平台的,因此不会在Windows中按预期运行

requestFocusInWindow()
此方法的聚焦行为可以在整个系统中统一实现 平台,因此强烈鼓励开发人员使用此功能 方法在可能的情况下优先于请求焦点。依赖于 requestFocus在不同的时间可能表现出不同的焦点行为 平台

我应该使用always requestFocusInWindow()而不是requestFocus()

视情况而定。如果您希望应用程序仅在特定操作系统中运行,请使用
requestFocus()
如果您希望成为多平台应用程序,请使用
requestFocusInWindow()

如果有疑问,请始终使用文档。

“顺便说一句,我的应用程序是专为macOS开发的”-不应该有任何区别,JavaDocs明确建议
requestFocusInWindow
而不是
requestFocus
,无论原因为何