Fog Creek Software
Discussion Board


Interestingly, WM_MOUSEWHEEL is not defined in VS6.0 or VS.NET.

MSDN says it's in Windows.h but it's not there. I had to run Spy++ to figure out the numeric value.

O.k., I'm showing off.
Wednesday, March 31, 2004

MSDN Library says it's in winuser.h, and if I open that file it is there indeed:

#if (_WIN32_WINNT >= 0x0400) || (_WIN32_WINDOWS > 0x0400)
#define WM_MOUSEWHEEL                  0x020A
#define WM_MOUSELAST                    0x020A
#define WM_MOUSELAST                    0x0209
#endif /* if (_WIN32_WINNT < 0x0400) */

Roel Schroeven
Wednesday, March 31, 2004

NOW who's showing off.

Oren Miller
Wednesday, March 31, 2004

My cat's breath smells like catfood.

Wednesday, March 31, 2004

I would like to ask two questions from usability point of
view. I was raised on Mac and still us a Mac as my
all purpose computer, so all my habits and opinions
originated there.

MS IntelliPoint Mouse lets me set-up mouse wheel on Mac
so it can scroll as many lines as I like. I can even set it
for every particular application. On Mac OS 9, mouse wheel
is not implemented on OS level, but on driver level so
apps don't even know such thing as mouse wheel does exist.

On Windows, mouse wheel is assumed to scroll three lines
and should be implemented within every application
handling WM_MOUSEWHEEL messages.

My question is what people here think about my intention
to make my app scroll only one line. Will this annoy users?

And second question is about mouse wheel and combo
boxes. I feel it's kinda strange to be able to change selection
in combo box with the wheel because that doesn't show
list part of the combo box and it looks like a potential
trouble maker for careless users. Even my friend
several weeks ago made a wrong selection that way
while he was on-line banking. Nothing special happened,
but it could.

Do you think that I should disable this feature on
ComboBoxes in my app, or should I somehow force
it to reveal list part and show scrolling moves, or just
go with the flow like everyone else?

Wednesday, March 31, 2004


In my control panel, under mouse, I can set the number of scroll lines; can you get this value from somewhere?

Wednesday, March 31, 2004


It should be this line:

SystemParametersInfo (SPI_GETWHEELSCROLLLINES, 0, &scrollLines, 0);

At the moment I don't have a Windows PC close to me,
but somehow I didn't find it in Mouse. Maybe I should
overcome my fears and go into Control panels on Win
more often. ;)

Then again, since most users would have it set to 3,
should I put my own prefs and have two radios:
[x] always one line,
[o] use system value,
and have first option set by default.

Wednesday, March 31, 2004

But I have a phone...

Looks like on Win 98 there's nothing about the wheel
in Mouse CP. Later I'll check myself how it's on XP.

And on a second thought, I'll just let users choose
it in a standard way in Mouse CP. If they don't know how,
I know now how to help them.

Wednesday, March 31, 2004


Wednesday, March 31, 2004

*  Recent Topics

*  Fog Creek Home