Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Tastenkombinationen Systemweit abfragen

  Alt 13. Jan 2007, 22:07
Moin E307,

hier mal ein komplettes Kurzbeispiel:

Delphi-Quellcode:
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure WMHOTKEY(var msg : TWMHotKey); message WM_HOTKEY;
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  if not RegisterHotKey(self.Handle,0,MOD_ALT or MOD_CONTROL,VK_F1) then begin
    ShowMessage(SysErrorMessage(GetLastError));
  end;
end;

procedure TForm1.WMHOTKEY(var msg: TWMHotKey);
begin
  if msg.HotKey = 0 then ShowMessage('Hotkey aufgerufen');
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  UnregisterHotKey(self.Handle,0);
end;
Wichtig:
Wenn der Hotkey schon von einem anderen Programm reserviert wurde, schlägt die Registrierung fehl, hier gilt: Wer zuerst kommt mahlt zuerst.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat