2015-02-07 15 views
1

키보드 이벤트 수신기와 관련된 문제가 발생했습니다. 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; 
    } 
} 

내가 필요한 조치에 대한 서로 다른 키를 설정하기 위해 시도하고 그들이 잘 작동합니다. 누구든지이 문제의 원인이 될 수있는 것을 설명 할 수 있습니까? 미리 감사드립니다

답변

2

ENTER 키는 숫자 키패드 (대부분의 키보드의 오른쪽 아래 모서리)에있는 키이고 RETURN 키는 RIGHT-SHIFT 키 위의 키입니다. .

일반적으로 ENTER 및 RETURN 키에는 게임 엔진의 다른 키 코드가 지정됩니다. KEY_RETURN 유형이 있는지 확인하고 시도해보세요.

+1

고맙습니다. 문제는 코드에있는 것으로 나타났습니다. 같은 문제가있는 사람들에게는 필요한 코드가 35 또는 KeyCode :: KEY_KP_ENTER입니다. – LarryLurex