在 Cocoa/Objective-C 中请求热键
Posted
技术标签:
【中文标题】在 Cocoa/Objective-C 中请求热键【英文标题】:Ask for Hotkey in Cocoa/Objective-C 【发布时间】:2011-08-26 07:40:52 【问题描述】:我想要一个允许用户选择全局热键的按钮。我偶然发现了 *** 并找到了一些注册热键的方法,但没有一种方法可以让我让用户选择一个。可能有图书馆吗?或者你们是怎么处理的?
应该是这样的:
【问题讨论】:
【参考方案1】:如果您想使用现有的框架,Shortcut Recorder 是一个经常使用的好框架。它非常易于使用,并且可能适合您的需求。正如 alfred 所提到的,您也可以手动执行此操作,但这种方式的工作量要大得多。
【讨论】:
Shortcut Recorder 无法在 OSX Lion 和 Xcode 4 上运行。可以编译,但没有一个快捷方式真正起作用。 这应该是一个 Xcode 4 友好的分支:github.com/Kentzo/ShortcutRecorder。我不使用这个框架,所以我无法测试它,但如果你用谷歌搜索“shortcut recorder xcode 4”,你会得到很多结果,其中一些在这个网站上。【参考方案2】:您可以只创建一个 Event Tap 并注册用户按下的按键。当回调函数被调用时,您将有足够的信息确切地知道按下了哪些键。那么你应该只更新字符串值。
或者,至少,我会这样做。
【讨论】:
您能否添加一些有关此解决方案的更多信息? “Event Tap”是什么意思?以上是关于在 Cocoa/Objective-C 中请求热键的主要内容,如果未能解决你的问题,请参考以下文章
Cocoa/Objective-C - 带有文本输入的子窗口,而主窗口没有变为非活动状态
iPhone 上 SQLite 的最佳 Cocoa/Objective-C 包装器库 [关闭]