Jupp, diesen Ansatz hatte ich schon aus Deinem Posting Nr. 7 herausgelesen, autobert.
Dein Beispiel funzt und ist auch bei Erweiterung auf 1000 Datensätze angenehm flott.
Heute Abend baue ich das mal real in mein Programm ein. Mal schauen, ob es dann immer noch flott ist (ich habe mehr Felder pro Datensatz).
Vermutlich macht es Sinn, zudem noch alpines' Tipp aufzugreifen und das Array zuvor passend zu kreieren. Denn möglicherweise verursacht _SQLite_GetTable2d() massenhaft ReDims (muss ich testen, ob dem so ist).
-------------
Übrigens ist das mal wieder so ein Punkt, wo die Hilfefunktion gerne etwas ausgebaut werden könnte.
Wenn das Umfärben von ListView-Einträgen nur bei einzeln kreierten Einträgen klappt, jedoch kläglich versagt, wenn man zuvor ein ganzes Array übergeben hat, dann müsste diese wichtige Info in die Hilfe!
Die sinnlose Probiererei hat mich Stunden gekostet, inklusive der Forenpostings. Euch hilfreiche Geister hat es ebenfalls Zeit gekostet (vielen Dank dafür!).
Und noch immer, trotz allem RTFM und allerhand Probiererei, blicke ich nicht völlig klar, in welchen Fällen $GUI_BKCOLOR_LV_ALTERNATE das tut, was man erwartet, oder es eben nicht tut.
Schade, dass die Hilfe dieses spezielle Flag bei GUICtrlCreateListView und bei GUICtrlCreateListViewItem zwar im Text erwähnt, dessen konkreten Einsatz dort aber im Beispielcode nicht demonstriert.
Immerhin: Bei GUICtrlSetBkColor wird der Einsatz auch im Quelltext gezeigt, dort wird aber gleich wieder verwirrt/relativiert mit den mehrfach vorhandenen Zeilen:
; The following line could be dropped as the background color is taken from the listview.
- Sicher versteht man das irgendwann, wenn man lange genug herumgetüftelt und sich mehrmals quer durch die Hilfe geackert hat. Aber ich habe den Eindruck, dass selbst Ihr erfahrenen Power-User nicht gerade auf Anhieb durchgeblickt habt, oder?
Für einen Einsteiger finde ich die Hürde schon ziemlich hoch!
Der Text macht Hoffnung, dass $GUI_BKCOLOR_LV_ALTERNATE der Bringer wäre, doch man probiert und probiert, es geht jedoch partout nicht.