在我的一种观点中,我将模态对话框称为:
let application = NSApplication.shared()
application.runModal(for: artistDialogWindow)
当按下“确定”或“取消”按钮时,我会像这样终止模式窗口:
let application = NSApplication.shared()
application.stopModal()
调用该对话框的视图重新获得控制权。运行代码后,它退出。在屏幕上,似乎没有窗口具有焦点。如果我单击窗口的标题栏,标题栏左侧的红色、橙色和绿色按钮就会从灰色变为彩色。我如何以编程方式执行此操作?
我尝试了 NSApplication.activate。它没有任何作用。想必我的应用程序已经处于活动状态。它只是没有焦点。我还尝试在视图中的表中选择一行。该行被选中,但窗口未被选中。
你可以尝试 NSWindow 的 makeKey()。或者 makeKeyAndOrderFront(_ sender: 有吗?)。这些会激活窗口。
例如,
niceWindow
必须获得焦点(您需要对要获得焦点的窗口的引用)。然后做:
niceWindow.makeKey()
或
niceWindow.makeKeyAndOrderFront(self)