Print Page | Close Window


Printed From: TMS Software
Category: General
Forum Name: Feature Requests
Forum Discription:
Printed Date: 21 Sep 2019 at 12:28am

Topic: TAdvSmoothImageListBox
Posted By: COCHE Françoise
Subject: TAdvSmoothImageListBox
Date Posted: 22 Aug 2011 at 6:15am
Hello Bruno,

It would be fine to have an event 'onGetImage' called when the box needs to display an image. Additionaly, only displayed images could be stored by the list ( a new property 'dontKeepImages' ?).

The listBox would be more dynamic, loading would be faster and use less resources.
It could be used in a larger panel of usage like thumbnails.


Posted By: Pieter Scheldeman
Date Posted: 23 Aug 2011 at 3:07am
Dear Mr. Coche, 

Your approach relies on the fact that only 20 images are displayed when the listbox could be displaying 1000 images, when scrolling, dynamically load more images. and remove the ones that are not visible anymore

The images are already loaded in this way when scrolling, depending on the threadloading event and only the visible ones are used for drawing.

the only difference is the images are not freed afterwards and remain in memory. To maintain performance, this must be done for zooming the image, using a larger scale of it or when scrolling fastly with animation.

Kind Regards, 
Scheldeman Pieter

Posted By: COCHE Françoise
Date Posted: 23 Aug 2011 at 6:09am
Thank you Peter for your answer.

I suppose (?) that it's true when images are loaded from a file. In my case, images are only in memory, I have to use a LoadFromStream method. If I do that in the initialization procedure, all my images will be loaded, it's right ?

Of course, I prefer to load my images "on-demand", is there any event where I can do something like that ?
I understand for keeping in memory the previously loaded images.

Best regards,

Print Page | Close Window