视觉工作室 - 我可以强制"press" C++中的转义键吗?

visual studio - Can I force an Escape key "press" in C++?

本文关键字:转义 C++ press 工作室 我可以 视觉      更新时间:2023-10-16

我知道您可以设置操作以在用户按下设置键时触发,在我的例子中是 Escape,如下所示:

transitions.push_back(new KeyTransition("GameMode", OIS::KC_ESCAPE));

想知道的是,我是否可以让程序"认为"Escency 键已被按下,即使它没有。例如,当用户单击按钮时,程序会模拟已按下转义键并触发附加到该键的事件。

执行此操作的一种方法是,而不是将其绑定到特定的按键事件,而是使用更通用的方法。

所以有一个像Cancel()GoBackOneScreen()等方法,无论ESC在做什么。 然后,您可以GoBackOneScreen() ESC 按键调用,当您需要模拟 ESC 按键时,只需调用 GoBackOneScreen() 方法即可完成。

请参阅以下内容: 如何将击键发送到窗口而无需使用 Windows API 激活它?

摘要:你不能可靠地。

//To force user to press escape key
#include<iostream.h>
#include<conio.h>
void main
{
    cout<<"press escape to exitn";
loop:
    if(getch()==27);
    else 
    {
        if (getch()==27);
        goto loop;
    }
}