gra*_*234 5 macos cocoa fullscreen swift
我试图使应用程序以演示模式启动,同时禁用 Dock、菜单栏、进程切换等。我为这些设置设置了变量,但现在我不知道如何将这些设置实际应用到应用程序。这是我到目前为止的代码:
\n\nlet presOptions: NSApplicationPresentationOptions = [\n .HideDock , // Dock is entirely unavailable. Spotlight menu is disabled.\n // .AutoHideMenuBar , // Menu Bar appears when moused to.\n // .DisableAppleMenu , // All Apple menu items are disabled.\n .DisableProcessSwitching , // Cmd+Tab UI is disabled. All Expos\xc3\xa9 functionality is also disabled.\n .DisableForceQuit , // Cmd+Opt+Esc panel is disabled.\n .DisableSessionTermination , // PowerKey panel and Restart/Shut Down/Log Out are disabled.\n .DisableHideApplication , // Application "Hide" menu item is disabled.\n // .AutoHideToolbar ,\n .FullScreen\n]\n
Run Code Online (Sandbox Code Playgroud)\n\n我相信之后的一行是:
\n\nlet optionsDictionary = [NSFullScreenModeApplicationPresentationOptions: presOptions]\n
Run Code Online (Sandbox Code Playgroud)\n\n但在那之后我完全迷失了。谢谢您的任何帮助!
\n假设您有 anNSWindow
和 an NSViewController
,您可以执行以下操作:
class ViewController: NSViewController {\n override func viewWillAppear() {\n let presentationOptions: NSApplicationPresentationOptions = [\n .HideDock , // Dock is entirely unavailable. Spotlight menu is disabled.\n .DisableProcessSwitching , // Cmd+Tab UI is disabled. All Expos\xc3\xa9 functionality is also disabled.\n .DisableForceQuit , // Cmd+Opt+Esc panel is disabled.\n .DisableSessionTermination , // PowerKey panel and Restart/Shut Down/Log Out are disabled.\n .DisableHideApplication , // Application "Hide" menu item is disabled.\n .FullScreen\n ]\n\n if let screen = NSScreen.mainScreen() {\n view.enterFullScreenMode(screen,\n withOptions: [NSFullScreenModeApplicationPresentationOptions:\n NSNumber(unsignedLong: presentationOptions.rawValue)])\n }\n }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n目前尚不完全清楚哪一个viewDidAppear
是viewWillAppear
执行此操作的最佳位置。从视觉上看似乎没有什么区别。
归档时间: |
|
查看次数: |
2058 次 |
最近记录: |