在上下文菜单中,我希望⌘→
成为等效的关键字。
在此support document中,您可以这样设置:
unichar arrowKey = NSLeftArrowFunctionKey;
[button setKeyEquivalent:[NSString stringWithCharacters:&arrowKey length:1]];
然而,我正在努力将其转换为Swift。
如何将允许的非字母数字键设置为Swift中的等效键?
答案 0 :(得分:3)
该代码需要NSLeftArrowFunctionKey
(一个C宏),将其分配给unichar
变量,然后将其地址提供给NSString
。令人讨厌的是,因为它是一个C宏而不是const
,所以你不能直接使用&NSLeftArrowFunctionKey
。
在Swift中,NSLeftArrowFunctionKey
导入为UInt16
,可用于创建UnicodeScalar
,可用于创建Character
,最终可用{ {1}}。
在Swift 2中使用它:
String
在Swift 3中使用它:
button.keyEquivalent = String(Character(UnicodeScalar(NSLeftArrowFunctionKey)))