Funktionstasten in CDialog anfangen / abfragen
-
Hi,
ich würde gerne eine der Funktionstasten (Bsp. F5) in meinem CDialog abfangen, wenn sich mein Programm als Symbol im Tray neben der Uhr befindet.
Bislang habe ich versucht mit dem Ereignis "OnKeyDown" das ganze abzufangen, aber
wenn ich den Debugger in die Funktion stelle, läuft da nix durch wenn ich irgendeine Taste drücke.
Kann mir jemand weiterhelfen, wie ich da vorgehen muss? Gibt es evt. ein Tutorial
oder ein FAQ?Danke im voraus.
-
ich denke mal da wirst du so einfach keinen erfolg haben da nur das Fenster das den Focus hat auch die Tastatureingabe bekommt, außer du verwendest nen Keyboad-Hook oder ebend DirecktX-Input, damit könnte es auch gehen, bin mir aber net wirklich sicher, nur überleg ob das wirklich Sinn macht dein vorhaben, denn wenn jemand ein Prg offen hat und die Funktion die auf F5 liegt in dem programm nutzen will, kommt dann nebendbei deine Funktion hoch, ich denke das kann bweim User eher Frust als Lust auslösen. Aber das nur zum Bedenken, da du nicht geschrieben hast was du vor hast mit der F5 Taste.
-
Schaz Dir mal RegisterHotKey an. Allerdings finde ich das Abfangen von F5 in allen Appikation etwas heftig und extrem.
F5 wird oft für die Aktualisierung verwendet. Bist Du sicher, dass Du das willst?
-
Danke für eure Antworten.
F5 war jetzt auch nur ein Beispiel. Es könnte bspw. auch ALT+F5 oder CTRL+F5 oder eine andere der F-Tasten sein.
Letztlich ist es ein Programm, dass im Hintergrund läuft, mit dem man eine Kassenschublade öffnen kann. Mehr nicht.
Ich benötige halt einfach eine Tastenkombination mit der eine Funktion in meinem Programm ausgelöst werden kann auch wenn das Programm nicht aktiv ist, weil bspw. die Warenwirtschaft den Fokus hat. In die Warenwirtschaft kann ich leider diese Funktion nicht integrieren.
Habt ihr evt. andere Vorschläge?
Ps: Habe mir mal WM_Hotkey angeschaut. Jetzt meine Frage, habe früher nur mit VS6.0 gearbeitet und da war vieles anders als in VS 2005: Wo kann man denn diese Window message über den Wizard in den Dialog einfügen? In der Resourcenliste für meinen CDialog ist die WM_HOTKEY nicht aufgeführt.
Kann mir jemand ein Tutorial oder ein Buch empfehlen, wo solche Dinge drinstehen?
-
Man barucht nicht für alles einen Wizard. Man kann solche Dnge auch manuell in die Message Map einfügen.