Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 241740 (3176)
  Suchen
 Zurück zur Übersicht
 AutorThema: Listview füllen dauert
Fernando
Datum:27.09.02 00:06 Antwortenals Email verschicken (cityelecronica@netcabo.pt) 


Hallo

Ich benutze einen Listview um eine Kundendatei einzulesen,
das funktioniert gut aber es dauert zu lange die Daten in
den Listview zu schreiben, mit der Zeit wird diese Datei grösser werden und die Zeit zum einlesen natürlich auch, was
dann unerträglich wird.
Wenn ich das DbBrowse Befehl für die gleiche Funktion benutze, ist das mindesten 20 mal schneller
Hat jemand eine Lösung das schneller zu machem?

Danke für jede mögliche Hilfe

Fernando




Sven Schmidts
Datum: 27.09.02 11:08 Antwortenals Email verschicken (schmidts@flat2serv.de) 


Ich weiss zwar nicht, wie "AutoRepaint" intern arbeitet, aber schau Dir mal folgenden Befehl an, ich denke, er hilft Dir weiter. Du musst die Aktualisierung deaktivieren, sonst zeichnet Windows mit jedem Eintrag neu und das dauert:

SendMessage(ListviewHandle&, WM_SETREDRAW, 0, 0) ' deaktiv.
SendMessage(ListviewHandle&, WM_SETREDRAW, 1, 0) ' aktivieren

Mit jedem neuen Eintrag muss Speicher allociert werden, was
dauert. Wenn Du schon vorher die Anzahl der Elemente weisst,
dann kannst Du definieren, wieviel Elemente reserviert werden
sollen. Damit muss das nicht mit jedem Eintrag gemacht werden:

SendMessage(ListviewHandle&, LVM_SETITEMCOUNT, Anzahl%, 0)

Mfg.
Sven Schmidts


 Zurück zur Übersicht