【发布时间】:2013-09-03 06:55:45
【问题描述】:
我需要知道哪些 NSString 值可以用于等效键。
我不知道该用什么
- 光标键
- 删除/退格
- 功能键
- 小键盘项目
【问题讨论】:
-
好吧,我发现删除是字符 127,退格是字符 8
我需要知道哪些 NSString 值可以用于等效键。
我不知道该用什么
【问题讨论】:
请参阅按钮编程主题:设置按钮的等效键:
对于单个字符:
[button setKeyEquivalent:@"\r"];
对于非打印字符:
unichar left = NSLeftArrowFunctionKey;
[button setKeyEquivalent:[NSString stringWithCharacters:&left length:1]];
按钮和菜单项对等效键使用相同的 API。
【讨论】:
每个键等效字符串只是键输入的字符。对于文本编辑键,在 NSText.h 和 documented in NSText's documentation 中定义的每个字符都有符号常量。使用[NSString stringWithFormat:@"%C", desiredCharacterGoesHere] 将这些转换为 NSStrings 以便与 NSMenuItems 等对象一起使用。
数字小键盘上的按键也是如此,它们与主键盘上的表亲没有区别。毕竟,我们在这里处理的是字符,而且两组键都输入了相同的字符。我认为没有办法设置菜单的键码而不是其等效键字符;您需要自己实现。
请注意,“删除”(与退格键相反)在 Mac 上称为“前向删除”,因为退格键通常称为删除。
【讨论】:
NSNumericPadKeyMask,菜单项都匹配字符。对我来说听起来像是一个错误,所以我建议提交它:bugreport.apple.com 同时,您可以使用 #145 中的信息自行处理。