Entwickler-Ecke
Windows API - Hotkey funktioniert nicht!
pesi - Mo 06.07.09 13:14
Titel: Hotkey funktioniert nicht!
Hi,
kann mir jemand sagen was hier falsch läuft???
Ich versuche einen Hotkey zu setzen und anschließend abzufangen.
Das setzen scheint auch zu funktionieren, habe hier einfach mal STRG+F genommen, da merkt man ziemlich gut ob die Tastenkombination abgefangen wird oder nicht - und was soll ich sagen... STRG+F in seiner "normalen" Funktion (Suchen) geht nicht mehr, aber mein Programm reagiert leider auch nicht entsprechen der WMHotKey-Routine.
WAS MACH ICH FALSCH???
Danke & Gruß Peter
P.S.: D5 Prof. / Turbo Delphi
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32:
| var Form2: TForm2; id1:integer; test:string;
implementation
{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject); begin showmessage(test); end;
procedure TForm2.FormCreate(Sender: TObject); Const MOD_ALT = 1; MOD_CONTROL = 2; MOD_SHIFT = 4; MOD_WIN = 8; VK_F = 70; begin id1 := GlobalAddAtom('Hotkey1'); RegisterHotKey(Handle, id1, MOD_CONTROL, VK_F); end;
procedure TForm2.WMHotKey(var Msg: TWMHotKey); begin Form2.Label1.Caption:='hallo'; end; |
Moderiert von
Narses: Delphi-Tags hinzugefügtModeriert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Mo 06.07.2009 um 13:17
Fienix - Mo 06.07.09 13:31
Sieht eigentlich gut aus, so hab ich es auch und es rennt.
Wie hast du dein WMHotKey deklariert?
---
Moderiert von
Narses: Beiträge zusammengefasst---
Aber warum setzt du das MOD_CONTROL selber? :?
pesi - Mo 06.07.09 13:38
Danke Fienix, das Wörtchen "deklariert" hat mich dann auch direkt zur Lösung gebracht. Da lag der Fehler, jetzt isses korrekt unter "private" so deklariert
Delphi-Quelltext
1:
| procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY; |
und dann geht´s natürlich auch.
Danke für den entscheidenden Hinweis!!!!!
Moderiert von
Narses: Delphi-Tags hinzugefügt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!