在可可应用程序和键盘布局中预定义全局热键

Posted

技术标签:

【中文标题】在可可应用程序和键盘布局中预定义全局热键【英文标题】:Pre-define global hotkeys in a cocoa application and the keyboard layout 【发布时间】:2011-10-31 19:23:41 【问题描述】:

我很想在我的小可可应用程序中预定义一些全局热键,我的问题是:我应该担心键盘布局吗?

我的意思是,例如,当我预定义像“Cmd+Opt+A”这样的全局键组合时,我可以查找“A”的键码并将其硬编码在我的程序中,但我不是确定当用户使用不同的键盘布局而不是我的键盘布局时是否会出现问题。另外,在这种情况下可以使用 kVK_ANSI_A 等吗?处理此类问题的最佳做法是什么?

谢谢!

【问题讨论】:

【参考方案1】:

键码被设计为通用的。这就是为什么使用它们而不仅仅是字母“A”。所以,是的,这样做是安全的。 Here 是 mac 应用商店中一个非常有用的应用,用于查找关键代码。 “A”的键码是 97。因此您可以使用 keycode = 97modifierFlags = NSCommandKeyMask | NSAlternateKeyMask; 注册热键

【讨论】:

以上是关于在可可应用程序和键盘布局中预定义全局热键的主要内容,如果未能解决你的问题,请参考以下文章

oracle VM virtualbox的热键

多账号工作台切换至下一个有消息的账号的快捷键是哪个?

替换全局热键

删除的快捷键是啥?

如果 Windows 任务栏具有当前焦点,则 LoadKeyboardLayout() 无法更改键盘布局

使用 Python 2.6 设置全局热键