Einzelnen Beitrag anzeigen

Benutzerbild von Master_RC
Master_RC

Registriert seit: 18. Jan 2005
459 Beiträge
 
Delphi 7 Enterprise
 
#1

Komponente zur Laufzeit erzeugen - Funktion zuweisen?

  Alt 2. Jul 2006, 08:31
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 :/
Ein Volk ist nur soviel wert, wie es dessen Toten ehrt.
  Mit Zitat antworten Zitat