在OSX上显示菜单栏图标

4 投票
3 回答
3290 浏览
提问于 2025-04-16 23:09

我想让我的应用程序在OSX的菜单栏中显示一个图标(就是屏幕顶部,Growl所在的地方)。我该如何用Python来实现这个呢?(我知道用wxPython是做不到的,但我想要wxPython特定的解决方案)。

谢谢!

3 个回答

0

rumps这个包让这件事变得非常简单。下面是来自rumps的说明文档中的一个例子:

import rumps

class AwesomeStatusBarApp(rumps.App):
    @rumps.clicked("Preferences")
    def prefs(self, _):
        rumps.alert("jk! no preferences available!")

    @rumps.clicked("Silly button")
    def onoff(self, sender):
        sender.state = not sender.state

    @rumps.clicked("Say hi")
    def sayhi(self, _):
        rumps.notification("Awesome title", "amazing subtitle", "hi!!1")

if __name__ == "__main__":
    AwesomeStatusBarApp("Awesome App").run()

rumps示例应用

1

在OS X的菜单栏中显示图标的接口叫做 NSStatusItem。不过,从wxPython应用程序中使用这个接口会比较困难,甚至可能不太可能。为了有效使用它,你可能需要用PyObjC来编写你的应用程序。

撰写回答