DATABASES
我使用此代码打开菜单,但是它不会像其他菜单一样位于菜单栏的后面吗?
update1:
menuBarIconMenu.popUp(positioning: menuBarIconMenu.item(at: 0), at: NSPoint(x: 1842, y: 1414), in: nil)
这就是我分配菜单的方式
更新2:
这有效 statusItem = NSStatusBar.system.statusItem(withLength:NSStatusItem.squareLength) statusItem?.menu = menuBarIconMenu
答案 0 :(得分:1)
在我的一个应用程序的先前版本中,我还通过调用弹出功能手动打开了菜单,并遇到了类似的问题。您是如何分配NSMenu的?我建议您将NSMenu分配给NSStatusItem的menu属性。然后,您不必手动添加代码即可打开菜单。您是否有分配给您的NSStatusItem的自定义NSView实例?
private let statusItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
func applicationDidFinishLaunching(_ aNotification: Notification)
{
self.statusItem.menu = self.createMenu()
}
private func createMenu() -> NSMenu
{
// Close
let menu = NSMenu()
menu.addItem(NSMenuItem(title: "Quit", action: #selector(self.quit), keyEquivalent: "q"))
return menu
}