擅长:python、mysql、java
<p>问题不在于rumps或PyObjC——只是一些简单的Python错误。您可能需要阅读Python中的类是如何工作的。在</p>
<p>罗纳德关于这条线的两点是正确的</p>
<pre><code>super(AwesomeStatusBarApp, self).title(self, "Hi")
</code></pre>
<p>不需要调用超类实现</p>
^{pr2}$
<p>但这仍然是错误的,因为您永远不想在类中的方法之间传递<code>self</code>,这是自动发生的</p>
^{3}$
<p>这仍然是错误的,因为<code>title</code>是一个重写为的属性</p>
<pre><code>self.title = "Hi"
</code></pre>
<p>完整代码:</p>
<pre><code>import rumps
class AwesomeStatusBarApp(rumps.App):
def __init__(self):
super(AwesomeStatusBarApp, self).__init__("Awesome App")
self.menu = ["updating"]
@rumps.timer(1)
def sayhi(self, _):
self.title = "Hi"
if __name__ == "__main__":
AwesomeStatusBarApp().run()
</code></pre>