我正在使用 Swift 构建一个 macOS 菜单栏应用程序,当单击 ' 按钮时NSStatusItem
,它会打开一个。NSPopover
NSStatusItem
我怎样才能也给NSPopover
重点?目前,用户需要点击弹出框来聚焦它,但我想以编程方式获取焦点。
提前致谢
我正在使用 Swift 构建一个 macOS 菜单栏应用程序,当单击 ' 按钮时NSStatusItem
,它会打开一个。NSPopover
NSStatusItem
我怎样才能也给NSPopover
重点?目前,用户需要点击弹出框来聚焦它,但我想以编程方式获取焦点。
提前致谢
解决方案是调用makeKey()
拥有的窗口。
这可以从 main 完成NSApplicationDelegate
,例如
func applicationDidFinishLaunching(_ aNotification: Notification) {
// Other setup
popover.contentViewController?.view.window?.makeKey()
}
或来自相关的NSViewController
,例如
override func viewDidAppear() {
super.viewDidAppear()
view.window?.makeKey()
}
文档在这里