我想在用户点击主窗口中的按钮时显示一个新窗口,但是当我使用 makeKeyAndOrderFront 调用单独的窗口时,该窗口弹出远离主窗口。
这是我在 NSViewController 的子类中写的:
myWindow = NSWindow()
myWindow.setFrame(myView.frame, display: true)
myWindow.contentView = myView
myWindow.makeKeyAndOrderFront(self)
但是,这会在主窗口之外打开一个新窗口。我想在主窗口中显示它,可能在主窗口的中心(我将 myView 的 .frame 值设置为位于中心)。
那么如何在主窗口中调用新窗口呢?换句话说,我可以指定新窗口的显示位置吗?
请您参考如下方法:
您需要将坐标和/或矩形转换为屏幕空间。 NSView 和 NSWindow 提供以“convert”开头的方法看看那些。 有时您需要链接以从 View 空间转换为窗口,然后将窗口转换为屏幕。 请记住,一个窗口有一个 NSScreen 屏幕方法,一个窗口可以出现在许多不同尺寸的屏幕上,并可能跨越多个屏幕。
