2012-06-18 84 views
0

我有一個用戶指定的全局熱鍵,並且希望檢查並確保它不會與其他應用程序發生衝突。是否有任何API可以向其他應用程序請求其快捷方式,或者我是否手動檢查所選快捷方式是否是常用快捷方式(Cmd + v,Cmd + C等)?可可檢查鍵盤快捷鍵是否正在使用

感謝

回答

1

你要問響應鏈,特別是[NSResponder類tryToPerform:與:]方法如果有什麼處理你的行動會回來。不要擔心其他應用正在做什麼,只需檢查用戶的快捷方式是否已被使用。

tryToPerform:with: 嘗試使用指定的參數執行動作指示的方法。

  • (BOOL)tryToPerform:(SEL)與anAction:(ID)anObject 參數 anAction 選擇器識別的操作方法。 anObject 要用作操作方法唯一參數的對象。 返回值 如果沒有找到響應anAction的響應者,則返回NO,否則返回YES。

討論 如果接收方對anAction作出響應,它會以anObject作爲參數調用該方法並返回YES。如果接收者沒有迴應,它會用相同的選擇器和對象將此消息發送給其下一個響應者。

可用性 可在OS X v10.0及更高版本中使用。 請參見 - doCommandBySelector: sendAction:爲:從:(的NSApplication) 宣佈 NSResponder.h

https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/nsresponder_Class/Reference/Reference.html#//apple_ref/occ/instm/NSResponder/tryToPerform:with