2011-05-05 67 views
2

我知道,你可以設置操作,如果用戶按下SET鍵,在我的情況下逃生,像這樣的東西來觸發:我可以在C++中強制使用Espress鍵「按下」嗎?

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

我想知道的是,如果我能有節目「想「退出鍵已被按下,即使沒有。例如,當用戶點擊一個按鈕時,程序會模擬退出鍵已被按下並觸發附加的事件。

+2

什麼平臺?食人魔? – 2011-05-05 15:44:29

+0

呃,是的,我們有食人魔,但我認爲它主要用於藝術方面。 – Briz 2011-05-05 15:46:26

回答

4

做到這一點的一種方法是將其綁定到特定的按鍵事件,而不是將其綁定到特定的按鍵事件。

所以有一個像Cancel()GoBackOneScreen()等方法,無論是ESC正在做什麼。然後您可以按ESC鍵撥打電話GoBackOneScreen(),當您需要模擬ESC鍵按下時,只需調用GoBackOneScreen()方法即可。

+0

這將是一個很好的方法,但是對於我正在開發的程序,嘗試使方法執行與該小行相同的功能非常複雜。 – Briz 2011-05-05 15:45:25

+0

這是我們的程序構建的方式。我的老闆親自寫了這段代碼。 – Briz 2011-05-05 15:51:05

+0

瞭解......自從我完成了C++之後,我只是想以一種更易於管理的方式拋棄它。 – taylonr 2011-05-05 15:52:16

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

嵌套'if(getch()== 27)的目的是什麼;'?吞下一把鑰匙(不管它是什麼),然後總是跳到'loop'。該代碼也沒有回答這個問題。 OP正在嘗試模擬一個退出鍵,直到用戶按下它才停止循環。 – forsvarir 2011-05-23 08:40:11

相關問題