Windows 7: How to Invert Your Mouse’s Scroll Wheel

In the last year or so, I’ve become increasingly dependent on my tablet for day-to-day computing. I’m finding that I rarely need a full desktop computer, but when I’m in the office, that’s what’s most convenient. Everywhere else, however, I have my tablet in my bag and can pull it out for anything from taking notes in a meeting, to grocery shopping, to entertaining myself or friends, to writing, email, and reading. One of the design philosophies in tablet OS design deals with scrolling the content instead of scrolling the viewport. What I mean is this, if I want to scroll down a page on my tablet (or phone), I push the page upwards, I don’t drag the device’s screen down.

If you were to put your hand on your screen, grab the document/page/file you’re viewing, and try to push it down to see the content below. It simply won’t work.

Here’s a more real-world example: Imagine that you can’t move your eyes; they are permanently fixed viewing a specific location on your desk. When you grab a piece of paper on your desk and move your hand downward, the page moves down, changing your focus to an area higher up on the page. If you move the page up, your focus changes to a location further down the page.

This is how tablet scrolling is designed.

This is something that I’ve found myself having trouble with lately on my desktop computer. I browse to a web page, open an email, edit a document, and I find myself pushing my mouse wheel upwards to scroll down a page rather than rolling it downward. Apple’s Mac OS X Lion has inverted the scroll direction, making for a more uniform experience across a myriad of different devices.

I began thinking, “I wonder if I can do that with my Windows 7 machine in the office.” Turns out, it can be done, and it takes changing a registry value in several places.

Here’s how I did it:

First, open the registry editor. If you’re unfamiliar with how to do that, just click on your Start Orb and type “regedit” and hit enter. You will have to authenticate/grant permissions as a system administrator before you can continue.

From here, you’re searching for the keys named FlipFlopWheel:

They are located in the folders along this path: HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Enum/HID/VID_???/???/Device Parameters. The ??? denote what seems to be folder names that begin with random strings of numbers. These are hexadecimal strings representing specific pieces of hardware, or hardware locations on your machine.

The default value for these keys is set to 0. 0 lets the mouse move the viewport rather than the content you’re viewing. To change this, simply double click the FlipFlopWheel key and change its value from 0 to 1. You may have to do this several times based on how many VID_??? folders you have in your HID folder, but it shouldn’t be too many.

Once you’re done, you will need to restart your computer to reload the registry with the new values. Once you’ve restarted, your mouse scroll wheel will be inverted!

I have not tested this on other versions of Windows, but I do know that it works beautifully on Windows 7.


    • Tom Mason

      I’m not familiar with the synatics trackpad, but since it’s just another pointing device, I would assume so.

  1. Chip

    Excellent! Works great on my school Dell XPS 13″. Going between mac and pc was hard because I was used to inverted scrolling. This works for both the Cypress touchpad and my mouse.

  2. Randy

    In Window’s Device Manager, you can go to the properties of your mouse, then to the details tab and select the Hardware IDs property to see the GUID of your mouse. That way you can easily identify the correct registry key to change.

  3. kuboid

    this works in principle, for everything except a browser. try as i might, i cannot get the scrolling to reverse on internet explorer or chrome. does anyone have any idea what i can do?

  4. detoor

    Works great! It did not require a restart for me. Just unplugged and re-plugged in my mouse.

Leave a Reply

Your email address will not be published. Required fields are marked *