SwordMaster Geschrieben 22. April 2005 Geschrieben 22. April 2005 Ich möchte in meinem Programm abfragen ob eine bestimmte Tastenkombination (Strg+Shift+C) gedrückt ist. Habe folgende Abfrage: if ((GetKeyState(17)<0) && (GetKeyState(16)<0) && (GetKeyState(67)<0)) { //die tasten sind gedrückt. } jetzt ist mir folgendes aufgefallen. wenn ich zum Beispiel: C + Shift + Strg oder C + Strg + Shift drückt (also die reihenfolgen) dann funktioniert es. ABER: bei der Reihenfolge: Strg+Shift+C Funktioniert die Abfrage nicht, weil angeblich C nicht gedrückt ist. Anfangs dachte ich dass es daran liegt dass ich die "Shift" Taste zuerst drücke und somit kein "kleines c" sondern ein "großes C" signalisiert wird wenn ich "C" drücke. aber die Tastenkombination Shift + C + Strg funktioniert auch. also kann es an dem "großen C" nicht liegen. wisst ihr an was es liegen könnte? wär echt super. danke swordmaster
Klotzkopp Geschrieben 23. April 2005 Geschrieben 23. April 2005 Hast du eine Konsolenanwendung? Da wird Strg+C gesondert behandelt. Siehe: http://msdn.microsoft.com/library/en-us/dllproc/base/ctrl_c_and_ctrl_break_signals.asp SetConsoleCtrlHandler(0, TRUE);am Anfang deines Programms sollte also schon ausreichen.
SwordMaster Geschrieben 23. April 2005 Autor Geschrieben 23. April 2005 danke für deine schnelle antwort, aber ich habe eine mfc dialogbasierende anwendung. (VC++ 6.0) ist mir echt schleierhaft wieso es da auf die reihenfolge der tastendrücke ankommt :-(.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden