Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - TListItems in Variable kopieren
firefuzy - Mi 10.10.07 20:37
Titel: TListItems in Variable kopieren
Hallo!
Ich habe mal eine Frage bezüglich der Listview Komponente. Ich will eigentlich nur alle Items in eine Variable laden und (etwas später) das ganze wieder rückgängig machen. So sieht der Code dazu bisher aus:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| ... var Form1: TForm1; Items: TListItems;
implementation
{$R *.dfm}
procedure TForm1.Button2Click(Sender: TObject); var DateiListe, Inhalt: TStringList; a: Integer; begin Items := TListitems.Create(Listview1);
Listview1.Clear;
Listview1.Items := Items; Items.Free; end; |
Blos leider funzt der Code nicht :(
Wenn man den Button drückt wird die Listview einfach leer.
Sowas wie
Delphi-Quelltext
1:
| Caption := Items[0].Caption; |
funktioniert aber, dann erhalte ich die 1. Zelle der 1. Spalte als Caption der Form...
Ich hoffe Ihr könnt mir helfen :wink:
Greetz firefuzy
Lannes - Mi 10.10.07 21:42
Hallo,
teste das mal:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| var virtualListView : TListView; virtualListItems: TListItems; begin virtualListView := TListView.CreateParented(THandle(-3)); virtualListItems := TListItems.Create(virtualListView); try virtualListItems.Assign(ListView1.Items);
ShowMessage(virtualListView.Items[0].Caption); virtualListItems.Delete(0); ListView1.Items.Clear;
Listview1.Items.Assign(virtualListItems);
finally virtualListItems.Free; virtualListView.Free; end; |
firefuzy - Do 11.10.07 16:38
Hi
Vielen Dank es funktioniert. :D
Aber was bedeutet THandle(-3) in der Zeile
Delphi-Quelltext
1:
| virtualListView := TListView.CreateParented(THandle(-3)); |
Wie kommt man auf die -3?
(Ich will immer gerne wissen, wie der Code funktioniert den ich in mein Projekt reinplaziere :wink: )
Bin dir auf jeden Fall sehr dankbar.
Greetz firefuzy
Lannes - Do 11.10.07 21:38
Hallo,
die wesentlichen Informationen habe ich aus dem ersten der verlinkten Links -die Erklärungen von DP-User marabu- entnommen. Der Link in die MSDN Library diente eher zur Vertiefung der erlangten Erkenntnisse, und zwar der Abschnitt Message-Only Windows. Die dort erwähnte Konstante HWND_MESSAGE brachte dann über eine Suche in Google weitere Informationen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!