我正在学习Mac OS开发,我使用Swift和可可创建了一个窗口,我想在屏幕外显示。我的代码如下:
@IBAction func tapShowSplitWindow(_ sender: Any) {
let initRect = NSRect(x: -100, y: -100, width: 300.0, height: 300.0)
var window = NSWindow(contentRect: initRect,styleMask: .titled, backing: .buffered, defer: false)
window.contentView = NSView()
window.contentView?.wantsLayer = true
window.contentView?.layer?.backgroundColor = NSColor.red.cgColor
window.makeKeyAndOrderFront(self)
}
窗口将出现在屏幕的左下角,我期望它在屏幕之外。
为什么?以及如何在外面展示
2条答案
按热度按时间w46czmvw1#
window.makeKeyAndOrderFront(self)
用于移动屏幕上的窗口。如果您真的希望窗口只显示一半,那么您可以使用setFrameOrigin
将其向后移动col17t5w2#
您可以覆盖
constrainFrameRect
来设置窗口的矩形。