xti*_*ian 5 macos user-interface xcode cocoa swift
我尝试将“应用程序是代理”设置为 1,但状态栏项目消失了。当设置为 0 时,状态栏项目和停靠栏图标都会显示。如何显示状态栏项目但隐藏停靠栏图标?
awakeFromNib()我在和applicationDidFinishLaunching()中尝试了以下操作AppDelegate.swift:
//class scope
let statusItem = NSStatusBar.system().statusItem(withLength: NSVariableStatusItemLength)
//function scope
self.statusItem.image = NSImage(named: "myImage")
let menu = NSMenu(title: "MyApp-Menu")
let menuItem = NSMenuItem(title: "title", action: nil, keyEquivalent: "")
menu.addItem(menuItem)
self.statusItem.menu = menu
Run Code Online (Sandbox Code Playgroud)
针对 Mac OS 10.14 进行了更新
在应用程序委托中:
let statusItem = NSStatusBar.system.statusItem(withLength:NSStatusItem.squareLength)
func applicationDidFinishLaunching(_ aNotification: Notification) {
if let button = statusItem.button {
button.image = NSImage(named:NSImage.Name("StatusBarButtonImage"))
button.action = #selector(launchFromTray)
}
constructMenu()
}
func constructMenu() {
let menu = NSMenu()
menu.addItem(NSMenuItem.separator())
menu.addItem(NSMenuItem(title: "Show", action: #selector(launchFromTray), keyEquivalent: "w"))
menu.addItem(NSMenuItem(title: "Quit", action: #selector(NSApplication.terminate(_:)), keyEquivalent: "q"))
statusItem.menu = menu
}
Run Code Online (Sandbox Code Playgroud)
您Application is agent (UIElement)现在应该将其设置为“是”。应该可以正常工作,希望这对某人有帮助
| 归档时间: |
|
| 查看次数: |
2559 次 |
| 最近记录: |