Platform SDK: DirectX

DIMOUSESTATE2

The DIMOUSESTATE2 structure contains information about the state of a mouse device that has up to eight buttons, or another device that is being accessed as if it were a mouse device. This structure is used with the IDirectInputDevice7::GetDeviceState method.

typedef struct DIMOUSESTATE { 
    LONG lX; 
    LONG lY; 
    LONG lZ; 
    BYTE rgbButtons[8]; 
} DIMOUSESTATE, *LPDIMOUSESTATE; 

Members

lX
Information about the mouse x-axis.
lY
Information about the mouse y-axis.
lZ
Information about the mouse z-axis (typically a wheel). If the mouse does not have a z-axis, the value is 0.
rgbButtons[8]
Array of button states. The high-order bit of the byte is set if the corresponding button is down.

Remarks

You must prepare the device for mouse-style access by calling the IDirectInputDevice7::SetDataFormat method, passing the c_dfDIMouse2 global data format variable.

The mouse is a relative-axis device, so the absolute axis positions for mouse axes are simply accumulated relative motion. Therefore, the value of the absolute axis position is not meaningful except in comparison with other absolute axis positions.

If an axis is in relative mode, the appropriate member contains the change in position. If it is in absolute mode, the member contains the absolute axis position.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
  Header: Declared in dinput.h.

See Also

DIMOUSESTATE