Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi HotKey registrieren geht nicht...? (https://www.delphipraxis.net/10984-hotkey-registrieren-geht-nicht.html)

Patrick 29. Okt 2003 09:17


HotKey registrieren geht nicht...?
 
Ich hätte ich da noch ne Frage, und zwar wie ich mit
Delphi-Quellcode:
RegisterHotKey(Handle, 1, 0, key{vk_F10/Ord('A')});
die Taste "Print" registriere...
Ich habe auch schon Probiert mit der "HotKey-Komponente" zu arbeiten, aber diese akzeptiert auch kein Print...

Warum reagiert mein Programm eigentlich nur auf HotKeys, welche nicht im Programm, welches im Vordergrund läuft, benutzt werden? Also wenn "A" ein HotKey ist, dann reagiert mein Programm nur auf "A", wenn das Programm im Vordergrund die Taste "A" nicht benutzt...

Christian Seehase 29. Okt 2003 12:10

Re: HotKey registrieren geht nicht...?
 
Moin Patrick,

Zitat:

Zitat von Patrick
Warum reagiert mein Programm eigentlich nur auf HotKeys, welche nicht im Programm, welches im Vordergrund läuft, benutzt werden?

Bei RegisterHotkey gilt: Wer zuerst kommt mahlt zuerst.
Das Programm, dass einen Hotkey als erstes registriert, bekommt ihn auch zugewiesen.

Du könntest in diesem Falle nur noch über einen Keyboard [dp]*Hook*[/dp] Zugriff auf eine bestimmte Tastenkombination nehmen.

Bei PRINT möchte ich mal stark annehmen, dass das Betriebssystem sich diesen Hotkey registriert, und dieser somit von einer anderen Anwendung nicht mehr registriert werden kann.

Füg' mal nach RegisterHotkey folgende Zeile ein:

Delphi-Quellcode:
ShowMessage(SysErrorMessage(GetLastError));
dann solltest Du genauer Erfahren, was schiefgegangen ist.

[EDIT]
Ausserdem verschieb ich den Thread mal nach "Windows API"
[/EDIT]

Patrick 30. Okt 2003 10:48

Re: HotKey registrieren geht nicht...?
 
Danke, aber da hätte ich noch ein problem, ich weis garnicht wie ich die "Print"-Taste definiere...
Delphi-Quellcode:
vk_F10 Ord('A')
Wie sieht das bei der "Print"-Taste aus?

Treffnix 30. Okt 2003 11:53

Re: HotKey registrieren geht nicht...?
 
Drucktaste ist VK_PRINT oder VK_SNAPSHOT

Steht in der Hilfe unter "Virtuelle Tastencodes"

Patrick 2. Nov 2003 10:25

Re: HotKey registrieren geht nicht...?
 
Wenn ich den Code
Delphi-Quellcode:
ShowMessage(SysErrorMessage(GetLastError));
einbaue sagt er mir immer: "Diese Abkürzungstaste ist nicht eingetragen"
Funktionieren tut es immernoch nicht...

Luckie 2. Nov 2003 10:28

Re: HotKey registrieren geht nicht...?
 
Diese Aktion von Christian war ja auch nur dazu gedacht, um zu sehen warum es nicht klappt. Wie es aussieht gibst du also eine ungültige Taste an.

Christian Seehase 2. Nov 2003 13:12

Re: HotKey registrieren geht nicht...?
 
Moin Patrick,

wie sieht denn Deine RegisterHotkey Zeile aus?

Patrick 2. Nov 2003 13:35

Re: HotKey registrieren geht nicht...?
 
Delphi-Quellcode:
RegisterHotKey(Handle, 1, 0,vk_print);
So sieht die Zeile aber überall aus....

Christian Seehase 2. Nov 2003 13:40

Re: HotKey registrieren geht nicht...?
 
Moin Patrick,

dann lass Dir bitte mal den Fehlercode numerisch ausgeben.

Delphi-Quellcode:
ShowMessage(IntToStr(GetLastError));
Dabei müsste dann 1409 oder 1419 rauskommen.

Patrick 2. Nov 2003 14:00

Re: HotKey registrieren geht nicht...?
 
Jo, da kommt die 1419 raus, und was sagt uns das jetzt???


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:33 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz