Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TList (https://www.delphipraxis.net/28236-tlist.html)

Kernel32.DLL 21. Aug 2004 19:59

Re: TList
 
Hmm....

Das kann natürlich sein...

Vielleicht versuchst du es trotzdem mal?

Naja, ich werde mich die nächsten Tage sowieso mit Stringliste auseinander setzen müssen...


=> 100. Beitrag :cheers: <=

[Edit] Da war wohl jemand am bearbeiten, als ich geschrieben hab :mrgreen: [/Edit]

semo 21. Aug 2004 20:01

Re: TList
 
habe ich doch probiert.... wie könnte ich sonst wissen das es nicht funktioniert? :roll:

Kernel32.DLL 21. Aug 2004 20:06

Re: TList
 
Wie gesagt:

Zitat:

[Edit] Da war wohl jemand am bearbeiten, als ich geschrieben hab [/Edit]
Das war, als ich den Post las, nämlich noch nicht da:

Delphi-Quellcode:
ExcelZeile := TStringList.Create;
// die Zeilen des ersten Schildes anzeigen
ExcelZeile := Schilder.Items[0];
So, nu können wir wieder zurück zum Topic :zwinker:

semo 21. Aug 2004 20:08

Re: TList
 
ok ok .. sorry ;)
hatte ich nachträglich angefügt....

Kernel32.DLL 21. Aug 2004 20:10

Re: TList
 
no prob :mrgreen:

Chewie 21. Aug 2004 20:42

Re: TList
 
Du machst folgendes: In deine TList-Instanz fügst du Referenzen auf das TStringList-Objekt hinzu. Danach gibst du dieses Objekt wieder frei. Das passiert in der LadeZeilen-Prozedur. In der anderen Prozedur gehst du nun hin und castest das erste Element der Liste als TStringList und greifst drauf zu. Wär ja soweit OK, nur dass du das Objekt, auf das du zugreifst, vorher schon freigibst!
Falls dus nicht wusstest: Eine Variable vom Typ einer Klasse ist nicht das Objekt selbst, sondern nur eine Referenz, also ein Zeiger, darauf. Eine Zuweisung der Art
Delphi-Quellcode:
var
  obj1, obj2: TObject;
begin
  obj1 := obj2;
end;
kopiert nicht das Objekt, sondern nur einen Zeiger!

semo 21. Aug 2004 21:13

Re: TList
 
eigentlich ist mir das schon klar :gruebel:


so funzt es natürlich:


in procedure ladeZeilen
Code:
for zeile := 1 to lastRow do
    begin
      spalte := 1;
      ExcelZeile := TStringList.Create;
      while (myExcel.Cells[zeile, spalte].Value <> '') do
      begin
        index := ExcelZeile.Add(myExcel.Cells[zeile, spalte].Value);
        Inc(spalte);
      end;
      Schilder.Add(ExcelZeile);
      Caption := IntToStr(Schilder.Count);
    end;
ne neue StringListe für jede Excelzeile anlegen... die in die TList laden.

in der anderen procedure mit arbeiten und dann bei bedarf alle items (stringlisten) der TList wieder freigeben


thx auf diesem wege :cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:33 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz