Entwickler-Ecke

Windows API - Hotkey funktioniert nicht mehr


Stread - Fr 27.05.11 21:00
Titel: Hotkey funktioniert nicht mehr
Hi,
bis vor kurzem ging bei mir noch mein Tastendruck Hotkey.
Dann wollte ich einen zweiten hinzufügen, habe einiges verändert und nun geht keiner mehr.
Da die Sicht bei eigenen Projekten immer eingeschränkt ist bitte ich euch mal drüber zusehen, vlt. habe ich nur was vergessen.


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TFormPixel.hot1key(var msg:TMessage);
begin
  if (msg.LParamLo=MOD_ALT) and (msg.LParamHi=51)
   then
  //wenn Alt und Y gedrückt wird hät der Timer an. Farbe bleibt.
   begin
    Timer1.Enabled:=False;
    Timer2.Enabled:=False;

    EditDez.Text:=IntToStr(Shape1.Brush.Color);
    FarbeShape:= Shape1.Brush.Color;
  end;

end;



Moderiert von user profile iconNarses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Fr 27.05.2011 um 21:44


jaenicke - Fr 27.05.11 21:33

user profile iconStread hat folgendes geschrieben Zum zitierten Posting springen:

Delphi-Quelltext
1:
2:
3:
  if (msg.LParamLo=MOD_ALT) and (msg.LParamHi=51)
   then
  //wenn Alt und Y gedrückt wird hät der Timer an. Farbe bleibt.
Du schreibst etwas von Alt + Y, gibst aber als Tastenkombination MOD_ALT + Zeichen 51 an. Zeichen 51 ist die Zahl 3...
Vielleicht versuchst du es besser einmal mit Ord('Y') bzw. 89...


Stread - Fr 27.05.11 22:23

Das meinte ich mit festgefahrener Sicht. Ich habe anscheinend die Falsche Tabelle verwendet. http://delphi.about.com/od/objectpascalide/l/blvkc.htm
Mit der ASCII gings dann. :oops:


jaenicke - Sa 28.05.11 05:36

Die Tabelle stimmt schon, $59 ist ja nun mal 89. Wie du aus der Tabelle auf 51 gekommen bist, ist mir nicht ganz klar, aber hauptsache es geht jetzt. ;-)