hi leutz!
Ich versuche das Kartenspiel "Pazaak" von Star Wars nachzubauen. (falls es jemand kennt)
Jetzt erzeuge ich X TImage für die Hand des Spielers. Klappt alles wunderbar, allerdingsmöchte ich gerne, dass beim onClick eines Images eine Prozedur/Funktion durchgeführt werden soll.
Geht ja gut, alerdings sollte dabei ein Parameter benutzt werden.
Zuerst:
So erstelle ich die TImages:
Delphi-Quellcode:
procedure KartenLegen;
var i: Integer; Bild: TImage; BildText: String;
begin
// Spielerhand legen
for i := 0 to 5 do begin
if SpielerHand[i].wert < 0 then begin
BildText := 'minus' + inttostr(SpielerHand[i].wert) + '.bmp';
end else begin
BildText := 'plus' + inttostr(SpielerHand[i].wert) + '.bmp';
end;
if SpielerHand[i].unbenutzt = false then begin
BildText := 'Leer.bmp';
end;
Bild:=TImage.Create(Form1);
with Bild do begin
Parent:=Form1.Groupbox3;
Left:=8 + i*49;
Top:=16;
Transparent := true;
Picture.LoadFromFile(ExtractFilePath(ParamStr(0))+'\data\skin\'+skin+'\'+BildText);
// OnClick:=KarteBenutzen(i);
end;
end;
end;
Das kommentierte onClick-Ereignis ist mein Problem. Ich hätte gerne dass eben die Prozedur "KarteBenutzen" durchgeführt wird, allerdings mit dem Parameter, welcher den Kartenwert darstellt.
Also bei einer Karte mit dem Wert 4 sollte KarteBenutzen(4); ausgeführt werden.
Klappt aber nicht :/