Answers:
我建议从此线程开始,该线程描述了从AppleScript内部使用Cocoa Objective-C调用。有一个例子Xcode项目在这里。
而Launch是一个用AppleScript编写的功能完整的应用程序。它的Xcode项目文件在这里。
基本前提是生成NSMenuItem实例并将其添加到系统的NSStatusBar中:
set statusMenu to (NSMenu's alloc)'s initWithTitle_("Launch")
-- (build and do stuff with the statusMenu here)
set sysStatusBar to NSStatusBar's systemStatusBar
set statusItem to sysStatusBar's statusItemWithLength_(32)
tell statusItem to setMenu_(statusMenu)
tell statusItem to setHighlightMode_(1)
set menuImage to NSImage's imageNamed_("icon.png")
tell statusItem to setImage_(menuImage)
AppleScript摘自Launch的源代码,版权所有©Lee Hanken
好的,我为此做了一个应用程序。它在GitHub:0942v8653 / ScriptableStatusBar上。只需保持应用程序运行并使用该sbar
工具即可设置和删除项目。
如自述文件所述:
sbar set face 😃 'Bye!:sbar remove face'
在状态栏中创建一个面孔。菜单将具有一个选项Bye!
,该选项sbar remove face
将摆脱其创建的菜单。
您可以从https://github.com/0942v8653/ScriptableStatusBar/releases下载编译版本。
另一个选择是使用Rumps,这是一个使用Obj-C类和函数的Python库。