当前正在处理一个学校项目,我们需要在SDL窗口中创建一个输入框。由于没有功能,因此我将创建基本的输入框,但无法找到如何检测SDL中按下了哪个键。
使用此代码,我在打'A'时就可以打印,但是我认为为每个字符设置都非常愚蠢,因此如何检测按下了哪个键?
case: SDL_KEYDOWN:
switch(event.key.keysym.sym){
case SDLK_a:
cout << "You Clicked \'A\' << endl;
break;
}
SDL_Keysym::sym
是SDL_Keysym::sym
值。正如您在SDL_Keycode
中看到的那样,这些键码仅在可能的情况下对应于ASCII值。
请注意,不考虑Shift之类的修饰符。我认为可以,因为您要求检测按键,而不是键入的字符。