Listen addieren?
Moin,
Gibt es die Möglichkeit, zwei Listen zu addieren bzw. in eine Liste die Elemente einer anderen Liste komplett einzufügen? Danke schonmal. |
Re: Listen addieren?
Gerade mit einer Listbox getestet, müsste deinen Zweck erfüllen:
Delphi-Quellcode:
listbox1.Items.AddStrings(listbox2.items);
|
Re: Listen addieren?
Ja, sofern die Listen die Typen der entsprechend anderen unterstützen, funktioniert es. Ein Beispiel mit einer TStringList:
Delphi-Quellcode:
//edit: Ich muss mal testen, ob obriger Code wirklich für alle StringListen funktioniert :gruebel:
var a, b: TStrings;
i, j: integer; begin a := TStringList.Create; b := TStringList.Create; a.Add('bla'); a('blubb'); while a[i] <> '' do inc(i); for i := 0 := i do b.Add(a[i]); end; //edit2: Klappt sogar :cry: Und eben noch ein Fehler in meinem Code ausgebessert ;) |
Re: Listen addieren?
naja ein paar fehler sind trotzdem noch geblieben, meinst du nicht?
|
Re: Listen addieren?
Vergess nicht die Listen freizugeben :shock:
Und mach nen try-finally-end Block drum... MfG Pr0g |
Re: Listen addieren?
Zitat:
Man das ist ja echt schon ewig her, dass ich Delphi geproggt hab, weil das sieht ganz schön falsch aus. was soll denn
Delphi-Quellcode:
also entweder das ist ne ganz neue variante zu schreiben, dass er von 0 nach einem bestimmten wert gehen soll, wenn i einen anderen Wert als 0 hatte, oder es ist einfach falsch. Ich glaube ja letzteres, weil ich dieses Konstrukt noch nie gesehen hab.
for i:=0 :=i do
Und es mag ja sein, dass es richtig ist, aber was zum Geier ist
Delphi-Quellcode:
a ist doch ein Objekt und keine Methode.
a('blubb');
Solche aufrufe kenne ich sonst nur vom Konstruktor in Java und C#. Und der Kontruktor hat da nun wirklich nix zu suchen. Ich bin jetzt erstmal verwirrt. Gruß Jan |
Re: Listen addieren?
Zitat:
edit: kein roter Kasten? |
Re: Listen addieren?
Zitat:
Also entweder ist mein Delphi intolerant, dass es keinen kreativen Code zulässt oder dein Delphi hat öfters einen spontanen Anfall von Nachlässigkeit. Und wie soll das bitte klappen?
Ich hab das oben Genannte einfach mal in einen Code verwandelt, wie ich ihn schreiben würde, er funktioniert auch:
Delphi-Quellcode:
MfG
var a, b: TStringList;
i: integer; begin a := TStringList.Create; b := TStringList.Create; try a.Add('blaA'); a.Add('blubbA'); a.add('sersA'); b.add('Tach auchB'); b.Add('sersB'); for i := 0 to a.Count -1 do b.Add(a[i]); ShowMessage(b.Text); finally a.free; b.free; end; end; Ultimator+ //edit Okay, 3 Leute in etwa das Gleiche, aber ich hab das Meiste :mrgreen: Aber der rote Kasten will und trotzdem vereiern... |
Re: Listen addieren?
Sagt mal Mädels...
Wer hat denn hier von TStrings geredet? :shock: Nur bevor sich da noch einer verbeisst... ;) btw: @malo :thuimb: :mrgreen: |
Re: Listen addieren?
:oops: Die Fehler in meinem "Code" tun mir Leid. Das war einfach so dahergetippt, ohne zu testen... Vielleicht hätte ich selbst den Code nochmal lesen sollen :duck:
Und mit "Klappt sogar" meinte ich die kurze Variante ;) Aber ihr seid auch verdammt clever. Sagt mir das doch das nächste mal, bevor die 24-Stunden-Editierfrist abgelaufen ist :wall: //Edit: Die letzte Vorschleife sollte übrigens heißen: for j := 0 to i. Wie gesagt, nur dahergetippt... ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:45 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