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 Zitieren
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. Zitieren
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 :-(. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.