[英]Finding when the ActiveApplication changes in OSX through Python
有没有办法找到当ActiveApplication通过Python和AppKit在OSX中更改时? 我知道如何找出launchedApplication和activeApplication(请在这里参考我的另一个问题: 使用Python在Mac OS X中查找当前的活动窗口 )
我不知道执行此操作的“官方” /好方法,但是解决此问题的一种方法是侦听任何分布式通知,并查看最前端应用程序更改时总是触发哪些通知,以便您可以收听那个:
您可以这样设置:
def awakeFromNib(self):
NSDistributedNotificationCenter.defaultCenter().addObserver_selector_name_object_(
self, 'someNotification:', None, None)
def someNotification_(self, notification):
NSLog(notification.name())
找到一个在切换应用程序时始终会触发的通知后,可以用该通知的名称替换addObserver_etc_调用中的第一个“无”,并在“ someNotification_”方法中检查最前面的应用程序。
就我而言,我注意到每次切换应用程序时都会触发“ AppleSelectedInputSourcesChangedNotification”,所以我会听。
请记住,这可能会随时中断,并且您将经常检查最前端应用程序中的更改,而不是需要的次数。
一定有更好的方法..希望:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.