C++에서 'c'키를 누르면 현재 GetAsyncKeyState 이벤트 처리기가 실행 중입니다. 나는 'C'가 너무 누르지 누른 경우 내가 키가 아래로 밀려 경우 내 부울 변수가 말해 isKeyPressed 사용 알고 싶어 그래서 bassically더 나은 키 누름
bool isKeyPressed = false;
void someFuntionOne()
{
if(GetAsyncKeyState('C') & 0x8000)
{
if(isKeyPressed)
{
isKeyPressed = false;
}
else
{
isKeyPressed = true;
}
}
}
void someFunctionTwo()
{
if(isKeyPressed)
{
// Do something
}
}
: 여기
내 코드입니다 어떤 지점. 눌렀 으면 isKeyPressed를 true로 설정하고 다시 누르면 isKeyPressed를 false로 설정합니다.내가 가진 문제는 거대한 OpenGL/C++ 프로그램을 실행하여 한 번의 반복으로 전체 프로그램을 실행하고 'C'키를 누른다면 , 프로그램은 다른 코드의 나머지 부분을 여전히 실행 중이므로 GetAsyncKeyState ('C')가 & 0x8000인지 확인하는 코드 섹션에 현재 있지 않으므로 해당 이벤트를 잡을 수 없습니다.
프로그램이 항상 실행 시간의 어떤 시점에서 발생하는 이벤트를 수신하는이 이벤트를 확인할 수있는 더 나은 방법이 있습니까? 어떻게 구현할 수 있습니까?
:! isKeyPressed = – CoryKramer
위대한 팁 덕분에 isKeyPressed (못생긴) 대안은 같은입니다! – Morelka