ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 TImageEnFolderMView scrollbar is stuttering
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

zerob

161 Posts

Posted - Jan 22 2021 :  17:32:59  Show Profile  Reply
TImageEnFolderMView scrollbar is stuttering and lagging a lot while scrolling, no matter the settings.

Even if i cache all images and let them load from cache with 12 threads and let them load while scrolling multiple times up and down.

It would be nice if scrolling and loading would be independent and scrolling would not be blocked by image loading/displaying.

It feels bad when it jerks around while scrolling in a picture gallery.

nwscomps

185 Posts

Posted - Jan 23 2021 :  04:27:36  Show Profile  Reply
You can try our thumbsbrowser add-on for imageEn, if the scrollbar behaves better. To my tests yes.

Francesco Savastano
Add-ons for the ImageEn Library
web: http://www.fssoft.it/delphicomps.html
Go to Top of Page

zerob

161 Posts

Posted - Jan 23 2021 :  05:30:33  Show Profile  Reply
Francesco, your addon library looks nice, but it is a bit an overkill to buy a second library only to use the already built in thumbnail control because it lags at the moment.

For my current project, this thumbnail list doesn't need a lot of features as it is only a small part of it. Maybe your library is worth a consideration for future projects that really make use of all the nice features.

Right now i only "want" the built in control not to lag that much.
Go to Top of Page

xequte

38611 Posts

Posted - Jan 23 2021 :  14:27:38  Show Profile  Reply
Hi

What version of ImageEn are you using? What type of images are in the folder? How many and how large are they?


Nigel
Xequte Software
www.imageen.com
Go to Top of Page

zerob

161 Posts

Posted - Jan 23 2021 :  16:02:57  Show Profile  Reply
The most recent 9.3.0

It happens no matter what type of images i use.
In a test i tried about 2000 jpegs with size ranging from 50kb to 2mb.

With these options i got it a bit faster but still it isn't perfect. And it also isn't scrolling as smooth as it should, when i create fake black rectangles instead of loading files. So scrolling / Painting isn't as smooth also.

IEGlobalSettings().JPEGEngine := ieenDLL;
IEGlobalSettings().IOParamDefaults.JPEG_Scale := ioJPEG_EIGHTH;
also tried ioJPEG_HALF;
And i did disable all filtering while resizing

Had to disable some scaled loading and exif loading "EnableLoadEXIFThumbnails" as it often took the small exif thumbnail and then used "JPEG_Scale := ioJPEG_EIGHTH" on that small exif thumbnail instead of using the full thumbnail or the eight of the big picture.

The best result i've got while scrolling is that the scrollbar isn't smooth but jumps a few blocks while scrolling
Go to Top of Page

xequte

38611 Posts

Posted - Jan 24 2021 :  23:59:44  Show Profile  Reply
Hi

You can disable real-time updates as you drag the scrollbar using:

ImageEnMView1.HScrollBarParams.Tracking := False;
ImageEnMView1.VScrollBarParams.Tracking := False;


Setting IEGlobalSettings().IOParamDefaults.JPEG_Scale has no effect on TImageEn*MView because if you are using ietThumb or ietFastThumb (default for TImageEnFolderMView) it always sets JPEG_Scale to ioJPEG_AUTO to use the fastest loading for the desired thumbnail size.

Using IEGlobalSettings().JPEGEngine := ieenDLL; WILL improve performance.


Nigel
Xequte Software
www.imageen.com
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: