swift - 单击 StatusBar 项目时弹出一个 View

标签 swift macos cocoa

我希望在单击 StatusBar 项目时显示一个 View ,如下所示:enter image description here

我已经设置了 StatusItem

import Cocoa

@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {


    @IBOutlet weak var imageManager: NSMenu!

    let statusItem = NSStatusBar.systemStatusBar().statusItemWithLength(-1)



    func applicationDidFinishLaunching(aNotification: NSNotification) {
        let icon = NSImage(named: "statusIcon")
        icon?.template = true

        statusItem.image = icon
        statusItem.menu = imageManager
        statusItem.action = nil
    }

接下来我该做什么?

最佳答案

最简单的方法是创建一个 NSPopover 对象并将其附加到状态项。网上有多个教程。 Here是个好东西!

不过,如果您需要更自定义的外观,则需要自己编写。为此,您需要一个具有透明背景的无边框窗口。它的 contentView 将绘制语音气泡设计的框架..

关于swift - 单击 StatusBar 项目时弹出一个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35774068/

相关文章:

objective-c - 与 NSPopupButton 不同,NSArrayController 的 selectedObjects 链接到 NSTableView 选择

cocoa - setFrameAutosaveName 方法在哪里保存窗口的位置?

ios - post 请求发送 [String : Any] and a body of type string 类型的参数

ios - 将 Facebook 登录与 Parse 集成

sql-server - 如何从我的主机 Macbook 连接到在 VirtualBox 上运行的 SQL Server

macos - 为什么 Haskell Stack 在尝试构建我的项目时挂起?

python - 为什么我运行 python manage.py runserver 时有两个进程

cocoa - NSArray 越界检查

ios - 如何弹出当前 View Controller (非模态)并返回上一个?

swift - 静态与动态类型