Die Variablen müssen erst noch instantiiert werden. (zuweisen des Speichers)
Code:
procedure Tmousemove.FormCreate(Sender: TObject); {OnCreate}
begin
mousepics[1] := TBitMap.Create;
mousepics[2] := TBitMap.Create;
mousepics[3] := TBitMap.Create;
mousepics[4] := TBitMap.Create;
mousepics[1].LoadFromFile('mouse.bmp');
mousepics[2].LoadFromFile('left.bmp');
mousepics[3].LoadFromFile('middle.bmp');
mousepics[4].LoadFromFile('right.bmp');
end;
Und vergiß nicht alles am Ende wieder freizugeben. (Programmeende)
Code:
procedure Tmousemove.FormDestroy(Sender: TObject); {OnDestroy}
begin
mousepics[1].Free;
mousepics[2].Free;
mousepics[3].Free;
mousepics[4].Free;
end;
In OnCreate werden die Bilder nur ein mal, beim erstellen des Formulars, erzeugt und geladen.
Und in OnActivate geschieht das jedes mal, wenn das Formular den Eingabefokus erhält.