如何为Mac创建菜单栏应用程序

Mac*_*Mac 175 macos cocoa menubar

编辑:这是一个很好的现成的菜单栏的应用程序在这里(GitHub的源)通过这个答案.


我想知道如何制作菜单栏应用程序,这样做的要求是什么?

我看到一个简单的菜单栏应用程序是使用您的浏览器打开链接,我想创建类似的东西.

在此输入图像描述

这是我喜欢的应用程序.

Ste*_*out 133

您正在寻找NSStatusItem.还要将字符串值为1的LSUIElement添加到Info.plist中以将其从Dock中隐藏.

  • http://www.mactech.com/articles/mactech/Vol.22/22.02/Menulet/ - 这是一个带有一些解释的示例代码. (14认同)
  • 我实现了SteamTrout链接中描述的示例并将其放在github上.它在这里:https://github.com/wanderingstan/IPMenuletExample (3认同)
  • 您可以查看我的一个GitHug项目中的示例:https://github.com/nippysaurus/WeatherRock/blob/master/BrissyBomAppDelegate.m#L59 (2认同)

Ale*_*ray 66

我发现Codebox的Popup是一个很好的起点.在Github上分叉是成熟的.

在此输入图像描述

虽然它运作良好,但他们确实在他们的网站上注意到......

PS在Lion中,Apple正在为iOS中的popovers添加一个新类.因此,在OS X 10.7发布之后,您最好在可能的情况下依赖本机Cocoa类.在其他情况下,Popup项目仍应可用.

  • 在任何情况下都不是这样.NSPopover具有严重的限制:文本字段/视图不能成为第一响应者,因此您无法输入文本. (3认同)

Mat*_*Fan 12

BitBarGitHub上的一个应用程序,它可以"在Mac OS X菜单栏中放置任何内容".

它运行shell或其他可执行脚本(它称之为插件 - 查看插件仓库中的许多示例)并在菜单栏中显示结果.您可以编写自己的插件,只需将其添加到"插件文件夹"即可运行.除了显示信息外,它还可以从您定义的插件菜单中以交互方式运行预定义的bash脚本.

自从我第一次发布这个答案以来,它的受欢迎程度已经爆炸(目前有52个贡献者),现在甚至还有一个可分发的版本,您可以使用它来打包自己的插件.

一个非常简单(非交互)的例子来显示比特币的实时价格:

在此输入图像描述

  • 感谢[cwd](http://stackoverflow.com/users/288032/cwd)提高我相当差的原始答案 (3认同)

tai*_*ino 10

由于Apple 在Yosemite中添加了NSStatusBarButton属性NSStatusItem,我们可以更简单地实现菜单栏应用程序.我刚刚在github上创建了一个示例项目.

https://github.com/taichino/PopupTest