【发布时间】:2023-03-04 14:19:01
【问题描述】:
我正在尝试以编程方式开发 OS X 可可应用程序,并且我正在尝试显示一个带有标题栏的窗口,该窗口在顶部显示通常的红绿灯(关闭、最小化、全屏)选项。 但是,当窗口显示在屏幕上时,只是一个空窗口。
这是我正在使用的代码:
class AppDelegate: NSObject, NSApplicationDelegate {
let window = NSWindow(contentRect: NSMakeRect(10, 10, 200, 200),
styleMask: NSWindowStyleMask.closable,
backing: NSBackingStoreType.buffered, defer: true)
func applicationDidFinishLaunching(_ aNotification: Notification) {
self.titleVisibility = .visible;
self.titlebarAppearsTransparent = false;
self.isMovableByWindowBackground = true;
let controller = NSWindowController(window: window)
controller.showWindow(self);
}
我在构建 NSWindow 时尝试了不同的NSWindowStyleMask,但没有成功。
这是我看到的:
我在 10.12 上使用 Xcode 8.3
【问题讨论】:
-
问题是您需要在 styleMask 中添加 .titled (
[.titled, .closable]) 否则标题栏和所有按钮(关闭、调整大小和最小化)将被隐藏。
标签: swift macos cocoa nswindow