A million years ago, when Windows 2000 came out, many VB6 developers got calls from users that the scroll wheel stopped working in their VB6 applications.
It didn’t take long for the fix (Install Intellimouse v4.0) to get shared on newsgroups and forums. (This was pre-blog days; do you even remember those?)
I have a client who has that Intellimouse install tucked away on the server to apply to new computers being set up with my old apps and it’s worked charmingly for years.
But a few months ago, a user got a new p.c. and the fix didn’t work. His job requires him to make heavy use of a function that has a big FlexGrid and not having the ability to use the scroll wheel definitely cramped his style and impeded the efficiency of his work.
I found a KB that offered a solution for the IDE, but not compiled exes. I dug into the mouse drivers on his compuer but there was no way to uninstall them.
Finally, on the VB newsgroups, MVP Ken Halter suggested a code fix that was on PlanetSourceCode.
Scroll Wheel Support: http://www.planetsourcecode.com/vb/scripts/ShowCode.asp?txtCodeId=48722&lngWId=1
It contains two modules that futz around with some Win32 stuff to get the scroll wheel to be noticed by VB6. You need to add those modules to your project and then make a call to a function passing in the window handler of your control when you fire up your form and then a detach function as you unload the form.
Simple as heck and worked like a charm!
(and generated this very happy note from the user: IT WORKS!!! THANKS!!)
Sign up for my newsletter so you don't miss my conference & Pluralsight course announcements!
One thought on “Re-Visiting an old VB6 problem – the disappearing mouse wheel-scrolling functionality”
There are a couple of other tidbits that readers of that entry might be interested in.First, if ClassicVB developers want to regain mousewheel support within the VB(A) IDEs, there are two tools that offer this: Wheeler – http://www.eluent.com/…/wheeler.htmand, – http://www.gasanov.net/…/VBScroll.aspI recommend the first, because it works with applications other that VB, including apps written with VB.It’s a really nice, nearly universal, solution to the abandonment of mousewheel support by the Microsoft Intellipoint team.