我用C ++在控制台窗口中编写一个简单的文本编辑器程序。我有一个while循环,它不断循环并检查是否按下了向上,向下,向左,向右或退格。方向键移动光标的位置,退格键删除该位置的字符。
**我的问题是:有没有办法可以设置一个条件,如果按下任意键,它会接受该键并将其打印在当前光标位置。例如,如果按下“a”键,则会在控制台窗口中打印“a”
继承人
while (pressedEscape == false) {
if (GetAsyncKeyState(VK_UP))
moveUp(position);
else if (GetAsyncKeyState(VK_DOWN))
moveDown(position);
else if (GetAsyncKeyState(VK_LEFT))
moveLeft(position);
else if (GetAsyncKeyState(VK_RIGHT))
moveRight(position);
else if (GetAsyncKeyState(VK_BACK))
deleteChar();
else if (GetAsyncKeyState(VK_ESCAPE))
pressedEscape = true;
else if (GetAsyncKeyState(0x43) || GetAsyncKeyState(0x63))
system("cls");
gotoxy(position.x, position.y);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 7);
Sleep(100);
}
所以id就像另一个其他条件,如:
else if (Any key is pressed) {
print that key to the screen
}
我该怎么做?