Einzelnen Beitrag anzeigen

Benutzerbild von Fussel9
Fussel9

Registriert seit: 25. Mai 2009
322 Beiträge
 
Turbo Delphi für Win32
 
#1

Schleife für Array beginnt an falscher Stelle

  Alt 26. Jan 2010, 21:41
Hi habe hier schon einiges zu meinem projekt gepostet..

das war das jetzige resultat:

Delphi-Quellcode:
//Aufruf
procedure TFormMain.Start;
begin
if not (Runde >= 20) then
  begin
    Inc(Runde);
    Austeilen([Card1,Card2,Card3,Card4,Card5,Card6,Card7,Card8,
              Card9,Card10,Card11,Card12,Card13,Card14,Card15,
              Card16,Card17,Card18,Card19,Card20],[OpCa1,OpCa2,
              OpCa3,OpCa4,OpCa5,OpCa6,OpCa7,OpCa8,OpCa9,OpCa10,
              OpCa11,OpCa12,OpCa13,OpCa14,OpCa15,OpCa16,OpCa17,
              OpCa18,OpCa19,OpCa20],[OpCa21,OpCa22,OpCa23,OpCa24,
              OpCa25,OpCa26,OpCa27,OpCa28,OpCa29,OpCa210,OpCa211,
              OpCa212,OpCa213,OpCa214,OpCa215,OpCa216,OpCa217,
              OpCa218,OpCa219,OpCa220]);
  end
Delphi-Quellcode:
procedure TFormMain.Austeilen(aImage: Array of TImage;
                              bImage: Array of TImage;
                              cImage: Array of TImage);
var
  i : Integer;
begin
Kliste.mischen;
Kliste.toFirst;
  for i := 0 to Runde-1 do
    begin
      Hand.Einfuegen(Kliste.GibAktuelles.GibInhalt);
      Kliste.Next;
      G1Hand.Einfuegen(KListe.GibAktuelles.GibInhalt);
      Kliste.Next;
      G2Hand.Einfuegen(KListe.GibAktuelles.GibInhalt);
      aImage[i].Picture.LoadFromFile(Hand.GibAktuelles.GibInhalt.GibPfad);
      bImage[i].Picture.LoadFromFile(X+'CARDBack.jpg');
      cImage[i].Picture.LoadFromFile(X+'CARDBackHORIZ.jpg');
      Kliste.Next;
    end;
end;
es handelt sich ersichtlicher weise um 20 Image komponenten ... jetzt will ich herrausfinden welche vom benutzer angeklickt wird...
daher wollte ich über die OnClick procedur der Image komponenten
via
ShowMessage((Sender as TImage).Name); herrausfinden um welche es sich handelt - zum testen...
dabei habe ich herrausgefunden dass die erste Imagekomponente die ein Bild zugeteilt bekommt
''Card11'' ist statt ''Card1''

also wenn ich auf die angezeigte Karte klicke kommt die Message
Card11

ich habe einen Button eingebaut der Start aufruft

klicke ich ihn dann werden natürlich
2 Karten ausgeteilt usw.

also klicke ich dann auf die zweite Karte kommt die message
Card12

usw. bis Card20

dann ist plötzlich die elfte karte... card11
und die erste card1 ... zwölfte ausgeteilte karte-> card12 erste und zweite ausgeteilte karte card1 und card2 ...

Weiß ihrgendjemand warum das so ist oder wie ich das ändern kann... bzw. wie ich anders herrausfinden kann die wievielte karte angeklickt wurde?


<PS...soll ich das vielleicht einfach mal hochladen oder gehts auch so?>
  Mit Zitat antworten Zitat