Я в процессе миграции программы с GLUT на SDL.В моей текущей программе нажатие клавиши a
приводит к другому ответу, чем нажатие клавиши A
.Это было довольно просто сделать в GLUT, так как обратный вызов функции клавиатуры передавал значение ASCII нажатой клавиши.
void keyPressedFn(unsigned char key, int x, int y){
switch(key){
case 'a':
// do work for a
break;
case 'A':
// do work for A
break;
}
}
Я изо всех сил пытаюсь воспроизвести аналогичную функциональность в SDL, поскольку нажатие клавиши a
дает одинаковый ответ независимо от того, нажаты ли также клавиши SHIFT или CAPS LOCK.
Есть липростой способ репликации вышеуказанной функции в SDL?
Редактировать : В приведенном выше примере я покажу, как обрабатывать только одну клавишу, однако на практике у меня будет списококоло 15 клавиш, на которые я хочу реагировать по-разному, если нажать и клавишу Shift.