class AppDelegate: NSObject, NSApplicationDelegate {
lazy var window: NSWindow = {
let window = NSWindow(contentRect: NSMakeRect(0, 0, kScreenWidth*0.5, kScreenHeight*0.5),
styleMask: [.titled, .resizable, .miniaturizable, .closable, .fullSizeContentView],
backing: .buffered,
defer: false)
// 设置最小尺寸
window.minSize = window.frame.size
// 打开显示在屏幕的中心位置
window.center()
return window
}()
// MARK: -life cycle
func applicationDidFinishLaunching(_ aNotification: Notification) {
// Insert code here to initialize your application
window.makeKeyAndOrderFront(nil)
NSApplication.shared.mainWindow?.title = "NSButton封装, 仿UIButton"
// 设置 contentViewController
let contentViewController = ViewController() // or ViewController(nibName:nil, bundle: nil)
window.contentViewController = contentViewController
}
func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
return true
}
func applicationShouldHandleReopen(_ sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool {
if flag == false {
window.makeKeyAndOrderFront(self)
return true
}
return false;
}
func applicationWillTerminate(_ aNotification: Notification) {
// Insert code here to tear down your application
}
}
MacOS 开发(一) : AppDelegate
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 本文翻译自 raywenderlich.com 的 macOS 开发经典入门教程 ,已咨询对方网站,可至多翻译 1...
- 秦人不暇自哀,而后人哀之;后人哀之而不鉴之,亦使后人而复哀后人也 在便捷的网络时代学习,更注重对基础知识的借与鉴。...
- 因为系统机制导致,MainViewController必须自己实现 loadView: 方法一:每个 NSView...