Hallo, ich benötige für ein Tool eine Hotkeyfunktion, welche bisher so aussieht:
Delphi-Quellcode:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, hotkey, Shellapi, ComCtrls;
type
TForm1 = class(TForm)
DemoHotKey: THotKey;
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.nfm}
procedure EvtHotkey(Sender: TObject; Name: string);
begin
if Name = 'Demosave' then
{ Save_demo(); }
end;
procedure erzeugen;
var
fHKManager: THotkeyManager;
begin
fHKManager := THotkeyManager.Create;
[b]fHKManager.Hotkeys['Demosave'].Hotkey := DemoHotKey.HotKey; // <--das mag er irgendwie nicht [/b]
fHKManager.Hotkeys['Demosave'].Hotkey := HKey; // HKey ist vom Typ TShortCut
fHKManager.Hotkeys['Demosave'].OnHotkey := EvtHotkey;
fHKManager.Hotkeys['Demosave'].RegisterHotkey;
end;
die
unit hotkey stammt von Christopher aka Chakotay und der bereich mit dem fHKManager sieht so aus:
Delphi-Quellcode:
THotkeyManager = class(TObject)
private
fCollection: TmxJsCollection;
function GetHotkeys(const Name: string): THotkeyItem;
public
constructor Create;
destructor Destroy; override;
property Collection: TmxJsCollection read fCollection;
property Hotkeys[const Name: string]: THotkeyItem read GetHotkeys;
function AddHotkey(Name: string; Hotkey: TShortCut; RegisterHK: boolean = true): integer;
procedure DeleteHotkey(Name: string); overload;
procedure DeleteHotkey(Index: integer); overload;
end;
Das Problem ist jetzt, dass ich eine Komponente THotKey mit dem Namen DemoHotKey hinzugefügte habe aber der Debugger meint, dass "DemoHotKey" nicht deklariert ist :-/
Kann mir jemand sagen, wo mein Fehler liegt?