Hello Timo,
> > ... did I simply misinterpret the purpose of that
> > LVIF_DI_SETITEM flag ?
>
> Yes, you do. LVIF_DI_SETITEM is intended for
> lazy-loading *normal* list views.
In that case the riddle is solved. Thanks.
:-\ If only the MSDN page regarding that flag and the LVITEM structure it
belongs to would have mentioned it ...
And another 'thank you' for explaining what it does. I was not aware that a
"lazy loading" mechanism was available (not that I have yet needed it, but
knowing its available doesn't hurt).
> The app may then use LVIF_DI_SETITEM to tell the
> list view to store the data and never ask again.
Hmmm .... So if you use LPSTR_TEXTCALLBACK but not LVIF_DI_SETITEM you get
something like a virtual listview. Interresting.
Regards,
Rudy Wieser
-- Origional message:
Timo Kunze <
TKunz...@gmx.de> schreef in berichtnieuws
lmmieu$duj$1...@speranza.aioe.org...
> Am 02.06.2014 11:19, schrieb R.Wieser:
> > My question therefore is: what is going on here ? Did I forget some
> > required initialisation or did I simply misinterpret the purpose of that
> > LVIF_DI_SETITEM flag ?
>
> Yes, you do. LVIF_DI_SETITEM is intended for lazy-loading *normal* list
> views. When inserting items into a list view, you can for instance set
> the item text to LPSTR_TEXTCALLBACK. Then the list view will query the
> application for the real data whenever the item needs to be drawn. The
> app may then use LVIF_DI_SETITEM to tell the list view to store the data
> and never ask again.
> Virtual list views on the other hand never store any item data. Instead
> they'll always query the data from the application.
>
> Regards
> Timo
> --
>
www.TimoSoft-Software.de - Unicode controls for VB6
> "Those who sacrifice freedom for safety deserve neither."
> "Demokratie ist per Definition unsicher. Ihr Schutz entsteht aus der
> �berzeugung, dass die demokratischen Kr�fte �berwiegen und sich - auf
> demokratischem Wege - durchsetzen."