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