Unable to scroll

English support forum

Moderators: white, Hacker, petermad, Stefan2

Post Reply
Thany
Senior Member
Senior Member
Posts: 292
Joined: 2003-09-30, 09:20 UTC
Location: Netherlands

Unable to scroll

Post by *Thany »

This bug existed at least already in 5.51, I was hoping for a fix in 6.0 but unfortunately not...

The problem is I'm unable to scroll using my mousewheel, but only in extremely large directories. One I'm unable to scroll in, contains approx. 80,000 files.
User avatar
WatchUer
Senior Member
Senior Member
Posts: 243
Joined: 2003-02-22, 10:46 UTC
Location: China

Post by *WatchUer »

Yes, I can also reproduce this, I use the avi plugin, Ctrl + Pgdn a mpeg4 avi file(700MB), It contains more than 100,000 bmp files, then the mouse's wheel won't work. But a 200MB avi file contains more than 30,000 files without this question.
Thany
Senior Member
Senior Member
Posts: 292
Joined: 2003-09-30, 09:20 UTC
Location: Netherlands

Post by *Thany »

I guess there's some kind of 16-bit unsigned number limitation (which ranges from 0 to 65535)... However it must be possible to resolve this, since the windows explorer scrolls just fine, even with hundreds of thousands of files (ok, very slowly, but still :)).
User avatar
white
Power Member
Power Member
Posts: 4624
Joined: 2003-11-19, 08:16 UTC
Location: Netherlands

Post by *white »

Are all the files shown?

I did some testing with a lot of 0 byte files. I created 32767 files of 0 bytes in a folder.

Scrolling using my mousewheel worked fine. However not all files were displayed in the file window of Total Commander. I don't remember exactly how many files were shown (I already cleaned up), I believe something like 32699. Maybe this has something to do with the sorting algorithm?

[Edited] I found a post-it on my desktop (my physical one :P). Total Commander reported 32699 files. The rest of the files were not shown and no error message was given. [/Edited]
Last edited by white on 2004-01-13, 09:57 UTC, edited 2 times in total.
User avatar
Lefteous
Power Member
Power Member
Posts: 9535
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

Some informations:

Number of items
On Win9x a listbox control cannot contain more than 32768 items. Total Commander uses such a listbox control.
On Windows NT based windows version there is no such limit.

Large directories work fine in Windows Explorer, but not in Total Commander. Why?
Windows explorer uses a listview control to display the items.

Scrolling problem
I wrote a small test program to verify this behavior. Indeed it doesn't work for listboxes containing more than 65536 items, even on a NT based machine.
Thany
Senior Member
Senior Member
Posts: 292
Joined: 2003-09-30, 09:20 UTC
Location: Netherlands

Post by *Thany »

That means the only remedy is that TC should manually catch the WM_MOUSEWHEEL message and process it. Even if a listbox contains more than 65536 items, the following line still works:

Code: Select all

SendMessage(ListBox.Handle, WM_VSCROLL, SB_LINEDOWN, 0);
So if this is done in the WM_MOUSEWHEEL message, and it's done according to the registry setting that defines how many lines to scroll at each mousewheel action, I don't see a problem ;)
User avatar
Lefteous
Power Member
Power Member
Posts: 9535
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

Thany wrote:That means the only remedy is that TC should manually catch the WM_MOUSEWHEEL message and process it. Even if a listbox contains more than 65536 items, the following line still works:

Code: Select all

SendMessage(ListBox.Handle, WM_VSCROLL, SB_LINEDOWN, 0);
So if this is done in the WM_MOUSEWHEEL message, and it's done according to the registry setting that defines how many lines to scroll at each mousewheel action, I don't see a problem ;)
Fine to hear that there is a solution. Is it right that WM_MOUSEWHEEL is driver dependant?
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

Use this very useful program as a workaround:
http://kickme.to/katmouse
I switched to Linux, bye and thanks for all the fish!
User avatar
Lefteous
Power Member
Power Member
Posts: 9535
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2SanskritFritz

Katmouse doesn't work for me. Any idea?
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

Lefteous wrote:2SanskritFritz

Katmouse doesn't work for me. Any idea?
If it doesnt work at all "KatMouse does not work together with Logitech Mouseware"

If the workaround is not working:
Katmouse / Settings / Applications / Add / Look for TOTALCMD.EXE / Open
Then double click on the TOTALCMD.EXE line / Custom scroll settings / Ok

This captures the WM_MOUSEWHEEL messages, and sends WM_SCROLL (or similar) messages to the scrollbar.
I switched to Linux, bye and thanks for all the fish!
User avatar
Lefteous
Power Member
Power Member
Posts: 9535
Joined: 2003-02-09, 01:18 UTC
Location: Germany
Contact:

Post by *Lefteous »

2SanskritFritz

Thank you.
User avatar
SanskritFritz
Power Member
Power Member
Posts: 3693
Joined: 2003-07-24, 09:25 UTC
Location: Budapest, Hungary

Post by *SanskritFritz »

Lefteous wrote:2SanskritFritz

Thank you.
Yeah, KatMouse is a little gem.
I switched to Linux, bye and thanks for all the fish!
Thany
Senior Member
Senior Member
Posts: 292
Joined: 2003-09-30, 09:20 UTC
Location: Netherlands

Post by *Thany »

Fine to hear that there is a solution. Is it right that WM_MOUSEWHEEL is driver dependant?
Well, you need to have a driver that generates this message when the scrollwheel is used. However, as of win98, all default drivers that come with the OS generate this message (if the mouse in question has in fact, a scrollwheel ;))

But nowadays there are pieces of cr*p like MouseWare that completely messes up the generation of WM_MOUSEWHEEL messages. Actually, I've never ever seen it work the way it should (I won't go into any detail as it would go beyond the scope of this topic). Not in any version of MouseWare. Microsoft's IntelliPoint works quite well I must say. And the only reason to install it anyway would be to effectely take advantage of additional button on the mouse...
Post Reply