Problem mit GetAsyncKeyState



  • Ich frage mit GetAsyncKeyState ab, ob eine best Tastenkomb. gedrückt wurde (Strg + Alt + A).Das funktioniert auch ganz gut, aber leider auch, wenn ich die Tasten gar nicht gleichzeitig drücke!
    Bsp.: Ich drücke zufällig Strg + Alt, lasse die Tasten los und drücke etwas später ein A, dann wird das 'T' auch ausgegeben!
    Wie verhindere ich das?

    if(GetAsyncKeyState(VK_A)&1 ==1)
    {
      if ((GetAsyncKeyState(VK_MENU) &0x0001 ) && (GetAsyncKeyState(VK_CONTROL) &0x0001 ))
      {            
           cout<<"T";  
      }
    }
    


  • Bitte helft mir!! ⚠ ⚠

    Ist wirklich dringend!!!



  • Hi, das Beispiel ist bei mir garnicht mal kompilierbar, da VK_A nicht deklariert ist. Das kann so nicht gehen !



  • ha, mein Fehler, hab ich im Header definiert, nur vergessen zu posten:

    #define VK_A 65
    


  • Teste mal diese Version. Möglicherweise funktioniert diese besser

    GetAsyncKeyState('A');
    	GetAsyncKeyState(VK_MENU);
    	GetAsyncKeyState(VK_CONTROL);
    	if(GetAsyncKeyState('A')){
    		if (GetAsyncKeyState(VK_MENU))
    		{
    			if (GetAsyncKeyState(VK_CONTROL))
    
    			{
    				cout << "test";
    			}
    		}
    	}
    


  • Nee, klappt nicht


Log in to reply