键盘输入工作正常,除了KeyCode :: KEY_ENTER

问题描述:

我遇到了键盘事件监听器的问题 - 除了Enter键以外,所有的键都能正常工作。 这里是我的代码:键盘输入工作正常,除了KeyCode :: KEY_ENTER

listener = EventListenerKeyboard::create(); 
    listener->onKeyPressed = CC_CALLBACK_2(PauseMenu::InputHandler, this); 
    _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); 

......

void PauseMenu::InputHandler(EventKeyboard::KeyCode keyCode, Event* event) 
{ 
    switch (keyCode) 
    { 
    case EventKeyboard::KeyCode::KEY_DOWN_ARROW: 
     Next(); break; 
    case EventKeyboard::KeyCode::KEY_UP_ARROW: 
     Previous(); break; 
    case EventKeyboard::KeyCode::KEY_ENTER: 
     Select(); break; 
    } 
} 

我试图设置必要的行动不同的密钥和他们很好地工作。任何人都可以解释什么可能是这个问题的原因? 在此先感谢

请注意,ENTER键是数字键盘(大多数键盘的右下角)上的那个,RETURN键是RIGHT-SHIFT键上方的那个键,可能是您正在寻找的东西。

ENTER和RETURN键通常在游戏引擎中被分配不同的键码。检查是否有KEY_RETURN类型,并尝试使用它。

+1

谢谢,原来问题出在你说的代码上。对于那些会遇到同样问题的人,所需的代码是35或KeyCode :: KEY_KP_ENTER。 – LarryLurex 2015-02-07 12:26:17