Entwickler-Ecke

Windows API - Hotkeys für Tastatur mit Zusatztasten


mattl - Mi 11.07.07 16:30
Titel: Hotkeys für Tastatur mit Zusatztasten
Ich verwende in meinem Programm systemweite Hotkeys das funktioniert auch problemlos nur möchte ich jetzt auch die Zusatztasten meiner Tastatur für Hotkeys verwenden...
Nur habe ich leider keine Ahnung wie ich das anstellen soll... bzw. ob das eigentlich möglich ist


Gausi - Mi 11.07.07 16:38

Afaik muss man für solche Tasten (Play, Stop, eMail, Internet, Einkaufen, WebCam, Messenger, und was da sonst noch alles fürn Kram drauf ist), die Messsage WM_APPCOMMAND abfangen. Mehr dazu hier [http://msdn2.microsoft.com/en-us/library/ms646275.aspx]. Für Hotkeys kann man die aber nicht benutzen, die Dinger sind von Natur aus hot ;-).


mattl - Mi 11.07.07 17:23

messages abfangen? mit einem hook?


Gausi - Mi 11.07.07 17:30

Ne, ohne Hook. Das geht zwar auch, aber zumindest bei den Player-Tasten habe ich da ganz doofe Erfahrungen gemacht. Ich mein das so:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
TForm1 = class(TForm)
//...
  protected
    procedure Sondertaste(Var aMSG: tMessage); message WM_APPCOMMAND;

// ..
procedure TForm1.Sondertaste(Var aMSG: tMessage);
begin
  case aMSG.LParam of
    // hier unterscheiden, welche Taste nun genau gedrückt wurde.
  end;
end;


Ob das aber wirklich für alle diese Tasten so geht, weiß ich nicht ;-)


mattl - Mi 11.07.07 17:39

ok werde das einmal ausprobieren, wenn die player tasten funktioniern bin ich schon zufrieden ;)


mattl - Mi 11.07.07 18:31

sry


Gausi - Mi 11.07.07 18:35

Wenns wirklich nur um die Player-Tasten geht, dann guck mal da. [http://www.delphi-forum.de/viewtopic.php?p=325443#325443]


mattl - Mi 11.07.07 18:40

wie kommt man an solche konstanten für messages ? ;)