[英]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.