![]() |
An marabu bezüglich 'Demo einer virtuellen ListView'
Hallo Marabu,
ich habe deine Demo von ![]() Wie kann ich die Dateien einlesen, ohne das die erste Zeile als Column erstellt wird? Ich habe in dem Listview bereits eigene Columns (Spaltenanzahl bleibt immer gleich). Die erste Zeile der Textdatei soll demnach die erste Zeile in der Listview werden. Ich habe es versucht, bekomme es aber nicht hin! Danke im voraus! |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Ohne das Demo zu kennen: Lass die erste Zeile einfach weg. Du wirst ja in deinem Quellcode eine Schleife haben über die Zeilen des Listviews, lass die Schleife doch einfach bei der zweiten Zeile beginnen.
Sollte in dem Demo eine extra Routine existieren für die Spaltenköpfe, lass sie einfach weg. |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Hallo,
wenn du die Spalten der ListView bereits fest vorgegeben hast, dann musst du nur wenige Änderungen machen:
Delphi-Quellcode:
Daraus ergeben sich an allen anderen Stellen entsprechende Änderungen. In FileNewExecute() musst du dann nur die Values leeren, bei FileSaveAsExecute() darfst du dann die Names nicht mit rausschreiben. Die Names-StringListe solltest du dann aus den Spaltennamen deiner ListView aufbauen, falls du sie irgendwo benötigst.
procedure TMainForm.FileOpenExecute(Sender: TObject);
begin with OpenDialog do if Execute then begin self.FileName := FileName; Values.LoadFromFile(FileName); { SetNames(Values[0]); Values.Delete(0); } ListItems.Count := Values.Count; ListView.Invalidate; end; end; Freundliche Grüße |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Habe es so versucht umzusetzen! Klappt aber nicht. Wenn ich eine Datei einlese (12345<tab>Name<tab>54321) dann erscheint nur 12345 in der ersten Spalte!
|
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Hallo,
wenn Du möchtest, dann stelle dein Projekt hier übersetzungsfähig ein und ich schaue es mir an. Freundliche Grüße |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Habe es versucht soweit zu ändern.
Was ich auch noch haben möchte ist: Wenn ich es abspeichere dann soll er mir hinter jeder Zeile 5x <tab> machen! Danke! |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Hallo,
übersetzungsfähig heißt: Packe dein Projekt bitte in ein ZIP-Archiv und hänge es an. Es bleibt auch so genug Arbeit für mich. Wenn du die fünf zusätzlichen Felder bereits als Spalten in der ListView vorsiehst, dann ist die Anpassung relativ einfach bereits beim Einlesen zu machen. Freundliche Grüße |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Liste der Anhänge anzeigen (Anzahl: 1)
Oh, sorry. Ich habe dann noch 5 Spalten erstellt.
Habe dann das Projekt mit anghangen! |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Testy,
ich habe dir eine Konstante DELIM eingebaut, mit der du das externe Feldtrennzeichen festlegen kannst. Beim interaktiven Arbeiten mit dem Programm wird immer mit CommaText gearbeitet, weil du ja bestimmte Trennzeichen sonst gar nicht eingeben könntest. Die Daten werden jetzt beim Einlesen und Bearbeiten normiert, so dass sie immer die Feldzahl haben, welche durch die Zahl der ListColumns vorgegeben wird. Was zuviel ist wird abgeschnitten, zu wenige Felder werden durch Leerfelder aufgestockt. Viel Spaß damit. marabu |
Re: An marabu bezüglich 'Demo einer virtuellen ListView'
Danke danke danke!!!!!! :thumb:
Es ist jetzt genau so wie ich es haben wollte! Nochmals vielen Dank!!! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 Uhr. |
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 by Thomas Breitkreuz