我正在开发一款C ++游戏。我试图使用getch()
方法包含字符输入。我需要 Ctrl + ◀和 Ctrl + ▶的字符代码(通常是八进制代码)来移动我的对象在游戏中。
就像我们有{kbd> Ctrl + Z 的代码032
。
以下是我正在使用的代码的一部分。
if (kbhit())
{
gotoxy(x, y);
cout << h;
i = getch();
if (i == '***') //I need some code here to move my object
{
x=x-5;
}
if (i == '***') //also need here to move it to right ward
{
x=x+5;
}
if (i == LEFT && x>LEFTLIMIT)
{
x = x - 3;
}
else if (i == RIGHT && x<RIGHTLIMIT-6)
{
x = x + 3;
}
}
答案 0 :(得分:1)
使用修饰键我建议使用GetAsyncKeyState
:MSDN
通过这种方式,您可以检查当前或上次调用GetAsyncKeyState
if(GetAsyncKeyState(VK_LEFT) && GetAsyncKeyState(VK_CONTROL)) {
....
}