我有一个不错的菜单系统,我想在选择时围绕防守移动箭头。我正在测试这个,所以我只有一个针对向下键的情境构建,但最终我会有向下和向上箭头。
我得到了它的工作,因为我按下向下键后想出来,选择是224.我遇到了一个新的问题,其中向上箭头键也是224 ...
char selector[4] = {'>',' ',' ',' '};
while (1)
{
DisplayMenu();
printf(" Main Menu: \n");
printf(" %c Log in \n", selector[0]);
printf(" %c Display High Scores \n", selector[1]);
printf(" %c Start Game \n", selector[2]);
printf(" %c Exit \n", selector[3]);
choice = getch();
switch (choice)
{
case 224:
for (int i = 0; i < 4; i++)
{
if (selector[i] == '>')
{
selector[i] = ' ';
i++;
selector[i] = '>';
}
}
break;
}
system("cls");
}
return numberChoice;
我的理论是当按下向下键时,移动'&gt;'在char数组中,然后当显示菜单时,它将显示'&gt;'或者是一个空间,给人一种在菜单选项中移动的错觉。当然,我似乎无法找到检测向下箭头的方法。有什么帮助吗?
答案 0 :(得分:0)
这取决于平台。
我建议你看看source code of the OpenGL library glfw
,它实现抽象来处理键盘事件。
This search on GitHub将向您展示他们如何为各种平台实施GLFW_KEY_DOWN
。