HOTKEYS abfangen



  • Wie im Titel schon beschrieben suche ich eine Möglichkeit die Windows Hotkeys (zB alt+Tab) abzufangen.

    Ich habe dies bisher über die ASCII Codes gemacht... Mir wäre auch geholfen wenn ich nur die ALT Taste abfangen kann.

    Gibt es einen Code der beim Drücken der Alt-Taste generiert wird?

    Hab es auch schon mit KEYDOWN und KEYUP versucht, brachte allerdings auch keinen Erfolg.

    Vielen Dank!



  • Die Alt-Taste hat keinen ASCII-Code. Die Hardwarefrickler nennen das, was Alt (u. U. in Kombination mit anderen Tasten) erzeugt einen "Scancode". Falls du die Win32-Konsole meinst, kannst du die WinAPI bemühen:

    #include <bitset>
    #include <iostream>
    
    #include <windows.h>
    
    int main( ) {
    
    	short alt_keystate( 0 );
    	short old_alt_keystate( GetAsyncKeyState( VK_MENU ) );
    
    	while( true ) {
    
    		alt_keystate = GetAsyncKeyState( VK_MENU );
    
    		if( alt_keystate != old_alt_keystate ) {
    
    			std::cout << std::bitset< 16 >( alt_keystate ) << std::endl;
    			old_alt_keystate = alt_keystate;
    		}
    	}
    }
    

    greetz, Swordfish


Anmelden zum Antworten