Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
21. Jan 2007
Probier mal folgendes:
var
img: array of TImage;
...
img := Image1;
img := Image2;
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
21. Jan 2007
Die beste Antwort steht eine Zeile drüber, erstelle Image1 und Image2 genauso wie du Karte erstellt hast.
Die Bilder kannst du dann zur Laufzeit mit Picture.LoadFromFile laden.
Gruß
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
21. Jan 2007
Na mit (Sender as TImage) so wie du es bereits machst.
Gruß
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
20. Jan 2007
Und vergiss bitte nicht die Images, am Ende (am besten im OnDestroy von Form1), wieder freizugeben.
for j := 0 to 3 do
for i := 0 to 4 do
Karte.free;
Gruß
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
20. Jan 2007
Schau dir mal deine Schleifen genau an, wenn du die äußere Schleife zum zweiten mal durchläufst, dann erstellst du wieder die TImage mit dem Index -
Gruß
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
20. Jan 2007
Dieser Teil muss in deine Schleife, dass jedes Image, diese Prozedur zugewiesen bekommt.
Karte.OnClick := Image1Click;
Diesen Code (Sender as TImage).picture := Image2.picture; schreibst du in dein Image1Click.
Zur Erklärung:
Durch Sender "weis" die Prozedur, welches TImage angeklickt wurde und in das läd er dann das Bild aus Picture2.
Gruß
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
20. Jan 2007
Deine OnClick Prozedur müsste dann ungefair so aussehen:
procedure TForm1.OnMyClick(Sender: TObject);
begin
(Sender as TImage).picture := Image2.picture;
end;
Gruß
Forum: Object-Pascal / Delphi-Language
Delphi
by MrKnogge,
20. Jan 2007
Du musst dem OnClieck-Event auch eine Prozedur zuweisen :wink:
Oder was genau funktioniert nicht ?
Gruß