Re: dynamische TStringList(en)
Zitat:
Zitat:
Und ob man einem Anfaenger zumutet, TList neu zu schreiben und alle Typen auszutauschen, oder ob man ihn 5 Zeilen fuer die Templates schreiben laesst, macht wohl auch keinen Unterschied mehr :roll: Greetz alcaeus |
Re: dynamische TStringList(en)
Zitat:
|
Re: dynamische TStringList(en)
Moin TheAn00bis,
Zitat:
Dass passiert nämlich nicht automatisch. |
Re: dynamische TStringList(en)
Zitat:
|
Re: dynamische TStringList(en)
Zitat:
Zitat:
Hab jetzt die TList-Variante genommen und bin sehr zufrieden! :) |
Re: dynamische TStringList(en)
Moin TheAn00bis,
Zitat:
|
Re: dynamische TStringList(en)
Ein Problem hätte ich doch noch:
Ich hab jetzt eine KartenListeListe, die viele KartenListen enthällt. Alles Typ TList. Die KartenListen enthalten Pointer auf viele TKarten. Eine Funktion von TKarte ist beispielsweise "test". Ihr Ergebnis ist vom Typ String. Wie weise ich jetzt einer Variable den Wert dieser Funktion zu? Beispielsweise nehme ich aus KartenListeListe die erste KartenListe und daraus die zweite Karte (und davon eben die Funktion "Test"). Ich habe nur einige Ideen und die scheinen alle absolut nicht zu funktionieren. |
Re: dynamische TStringList(en)
Delphi-Quellcode:
Wenn du mehrere Funktionen der entsprechenden Klasse benutzen willst, kannst du es auch so machen:
procedure a;
var s: string; begin s := KartenListeListe1.KartenListe1.Karte2.Test; end;
Delphi-Quellcode:
procedure a;
var s: string; begin with KartenListeListe1.KartenListe1.Karte2 do begin s := Test; end; end; |
Re: dynamische TStringList(en)
Danke, aber die Listen in KartenListeListe werden dynamisch erstellt und haben alle den selben Namen. (oder!?) Jedenfalls erstelle ich die so:
Delphi-Quellcode:
Jetzt will ich aus jeder Karte davon den string auslesen können. Wie komme ich jetzt an den string einer beliebigen Karte? (wäre schön mit Variable für die Nummer der KartenListe und der Karte)KartenListeListe:=TList.Create; for i:=1 to 5 do begin KartenListe:=TList.Create; KartenListeListe.Add(KartenListe); end; for i:=1 to 5 do begin Karten:=TKArte.Create; TList(KartenListeListe[i]).add(Karte); end; |
Re: dynamische TStringList(en)
Zitat:
Delphi-Quellcode:
Aber lass mich raten: die zwei Listen stellen ein zweidimensionales Array von Kartenteilen dar? Dann würde ich alcaeus' ObjetList-Template auf zwei Indizes umschreiben, das wird dir die Arbeit erheblich erleichtern.
TKarte(TList(KartenListeListe[i]).Items[ii]).Test
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz