Windows 95/NT IntelliMouse Service
Contributed by Roy Kiesler
Object Ancestor n_cst_mousewheel n_base n_cpp_mousewheel cplusplus
You have probably heard about the Microsoft® IntelliMouse® pointing device with the rotating wheel. The wheel is used by supporting applications as a hardware alternative to scrolling, panning and zooming. It also serves as a middle mouse button.
The features of the IntelliMouse have native support in Windows NT 4.0, but they require the IntelliPoint drivers (shipped with the mouse) to work with Windows 95/98 or earlier versions of Windows NT.
The IntelliMouse service enables PFC applications to scroll the contents of all common controls (not just the listview and treeview controls which are supported in 6.x, but also datawindow, listbox and multi-line edit controls). Future enhancements will include zooming in/out on the contents of datawindow controls.
Using The Service
Instantiate the mouse wheel service object by calling the f_SetMouseWheel global function.
Listing 1: Declare instance variables for n_cst_appmanager n_cst_mousewheel inv_mouse
Listing 2: Constructor() event for n_cst_appmanager f_SetMouseWheel( inv_mouse, TRUE )
Listing 3: Destructor() event for n_cst_appmanager f_SetMouseWheel( inv_mouse, FALSE )
The file mousewheel.pbl contains a small PFC application that demonstrates the use of all functions in this service.
n_cpp_mousewheel requires the PBMWHEEL.DLL file. This DLL installs a system-wide hook to interpret WM_MOUSEWHEEL messages. With this DLL in place, your PB application will respond to wheel messages regardless of whether the Intellimouse drivers are installed on your machine or not.
|Download the||About the contributor|
|10/03/1998||Initial Revision||Ver. 1.00|
Interested in contributing material to this web site? Send an email to email@example.com, but don't forget to check the contribution guidelines first.
For information or suggestions about this web site please contact firstname.lastname@example.org
sponsored by Dynamic Technology Group.
The information on this site is provided for advice only and not to be considered a contract or a liability against Dynamic Technology Group.