【发布时间】:2021-05-13 19:18:33
【问题描述】:
我是 swift 的初学者,我正在为自己的项目学习。现在,我正在尝试制作一个“信息亭模式”窗口,该窗口最大化以填充整个屏幕,同时隐藏菜单栏和停靠栏,因此无法退出应用程序(顺便说一下,这是一个拖延应用程序)。但是,在一切正常之后,我遇到了一个问题,因为菜单栏占用的空间现在有一个我需要填补的空白 (see pic)。由于这个差距,用户可以单击差距并退出我试图阻止的应用程序。我在这里做了很多搜索,但我找不到解决方案,我非常感谢我能得到的任何帮助。
注意:我正在使用 Swift 4.1 和 Xcode 9.4.1
import Cocoa
typealias NSRect = CGRect
class MainWindowController: NSWindowController {
convenience init() {
self.init(windowNibName: NSNib.Name(rawValue: "MainWindowController"))
}
override func windowDidLoad() {
super.windowDidLoad()
NSMenu.setMenuBarVisible(false)
NSApp.presentationOptions = [.hideDock, .hideMenuBar, .disableForceQuit, .disableProcessSwitching,.autoHideToolbar]
window?.backgroundColor = NSColor(red: 1, green: 0, blue: 0, alpha: 0.754)
window?.isOpaque = false
window?.setFrame(NSScreen.screens[0].frame, display: true, animate: false)
window?.styleMask.remove(.titled)
}
}
【问题讨论】:
-
这能回答你的问题吗? How to set up Kiosk Mode for Mac apps?
-
@Willeke 感谢您的建议!实际上我已经看过那个线程,但它仍然在顶部产生了间隙。