假设您正在为Mac OS X创建游戏。事实上,假设您正在创建Quake,只有2011年,您更愿意只使用现代的,不推荐使用的框架。
当用户在键盘上按下(或释放)键任意键时,您希望通知您的游戏。这包括修改键,如移位和控制。 已编辑添加:此外,您还想知道是否按下了修改键的左侧或右侧版本。
您还希望您的游戏具有配置屏幕,用户可以在其中检查和修改键盘配置。它应包含以下内容:
你做什么的?我一直试图找到一个好的答案,但现在还没有成功。
这就是我想出来的:
那么,这样做的正确方法是什么?这真的感觉就像一个应该有一个众所周知的,记录良好的解决方案的问题。这并不像游戏是非常小众的。
答案 0 :(得分:7)
正如其他人所说,使用-flagsChanged:
并没有错。还有另一种选择:使用IOKit HID API。无论如何你应该使用它来进行操纵杆/游戏手柄输入,可以说是鼠标输入;键盘输入可能也可能不方便,取决于你正在做什么。
答案 1 :(得分:1)
这看起来很有希望:
+ [NSEvent addLocalMonitorForEventsMatchingMask:handler:]
似乎是10.6中的新功能,听起来就像你正在寻找的那样。更多信息: