如何收听cocos2d-x mouse&键盘事件?

时间:2013-01-06 01:10:44

标签: objective-c keyboard mouse cocos2d-x

我正在运行他们的样本的proj.mac版本(随cocos2d-x文件一起提供)。

我看到Mac版本的EAGLView.mm有:

- (void)mouseMoved:(NSEvent *)theEvent
{
  DISPATCH_EVENT(theEvent, _cmd);
}

我确保在AppController.mm中启用鼠标移动事件:

[window setAcceptsMouseMovedEvents:YES];

我可以看到它会去那里,但我想知道的是如何制作我的自定义 CCLayer "注册/收听"鼠标和键盘事件。

cocos2d-x论坛提到他们的 TestCase 文件夹中有 KeyboardTest ,但我只能找到 KeypadTest 做得不多。还有一些例子提到 CCKeyboardDispatcher ,这是无处可寻的。

提前致谢!

1 个答案:

答案 0 :(得分:0)

我认为他们可能正在谈论这个补丁:https://github.com/cocos2d/cocos2d-x/pull/1849/commits

它尚未出现在主线上。如果你直接应用它,你会遇到一些补丁拒绝,你需要手动将新的CCKeyboard *文件添加到你的XCode项目(Build Phases)。

我只是推动了我为了编译而进行的更改(并使得KeyboardTest在示例目录中运行):

https://github.com/therealdpk/cocos2d-x/

但是,大部分工作都不是由我撰写的。我不知道我是否能够保持这种状态,所以最好将它作为起点。