MOUSE_INPUT_DATA-Struktur (ntddmou.h)

MOUSE_INPUT_DATA enthält ein Paket mit Mauseingabedaten.

Syntax

typedef struct _MOUSE_INPUT_DATA {
  USHORT UnitId;
  USHORT Flags;
  union {
    ULONG Buttons;
    struct {
      USHORT ButtonFlags;
      USHORT ButtonData;
    };
  };
  ULONG  RawButtons;
  LONG   LastX;
  LONG   LastY;
  ULONG  ExtraInformation;
} MOUSE_INPUT_DATA, *PMOUSE_INPUT_DATA;

Member

UnitId

Gibt die Einheitennummer des Mausgeräts an. Der Name eines Mausgeräts hat das Format \Device\PointerPortN, wobei das Suffix N die Einheitennummer des Geräts ist. Ein Gerät, dessen Name \Device\PointerPort0 lautet, weist beispielsweise die Einheitsnummer 0 auf, und ein Gerät, dessen Name \Device\PointerPort1 lautet, weist die Einheitsnummer 1 auf.

Flags

Gibt ein bitweises OR eines oder mehrerer der folgenden Mausindikatorflags an.

Wert Bedeutung
MOUSE_MOVE_RELATIVE LastX und LastY werden relativ zum vorherigen Speicherort festgelegt.
MOUSE_MOVE_ABSOLUTE Die LastX - und LastY-Werte sind auf absolute Werte festgelegt.
MOUSE_VIRTUAL_DESKTOP Die Mauskoordinaten werden dem virtuellen Desktop zugeordnet.
MOUSE_ATTRIBUTES_CHANGED Die Mausattribute wurden geändert. Die anderen Daten in der -Struktur werden nicht verwendet.
MOUSE_MOVE_NOCOALESCE (Windows Vista und höher) WM_MOUSEMOVE Benachrichtigungen werden nicht zusammengeblendt. Standardmäßig werden diese Meldungen zusammengefaktet.

Weitere Informationen zu WM_MOUSEMOVE Benachrichtigungen finden Sie in der Dokumentation zum Microsoft Software Development Kit (SDK).

Buttons

Gibt sowohl ButtonFlags - als auch ButtonData-Werte an. Mouclass verwendet Buttons in seiner Interruptdienstroutine, um einen schnellen Einzelspeicherzugriff auf ButtonFlags und ButtonData zu ermöglichen.

ButtonFlags

Gibt den Übergangszustand der Maustasten an.

Flag Bedeutung
MOUSE_LEFT_BUTTON_DOWN Die linke Maustaste wurde in nach unten geändert.
MOUSE_LEFT_BUTTON_UP Die linke Maustaste wurde in "Up" geändert.
MOUSE_RIGHT_BUTTON_DOWN Die rechte Maustaste wurde in nach unten geändert.
MOUSE_RIGHT_BUTTON_UP Die rechte Maustaste wurde in "Up" geändert.
MOUSE_MIDDLE_BUTTON_DOWN Die mittlere Maustaste wurde in nach unten geändert.
MOUSE_MIDDLE_BUTTON_UP Die mittlere Maustaste wurde in "Up" geändert.
MOUSE_BUTTON_4_DOWN Die vierte Maustaste wurde in nach unten geändert.
MOUSE_BUTTON_4_UP Die vierte Maustaste wurde in "Up" geändert.
MOUSE_BUTTON_5_DOWN Die fünfte Maustaste wurde in nach unten geändert.
MOUSE_BUTTON_5_UP Die fünfte Maustaste wurde in "Up" geändert.
MOUSE_WHEEL Mausraddaten sind vorhanden.
MOUSE_HWHEEL Daten zum horizontalen Mausrad sind vorhanden.

ButtonData

Gibt Mausraddaten an, wenn MOUSE_WHEEL in ButtonFlags festgelegt ist.

RawButtons

Gibt den unformatierten Zustand der Maustasten an. Das Win32-Subsystem verwendet diesen Member nicht.

LastX

Gibt die relative oder absolute Vorzeichenbewegung in x-Richtung an.

LastY

Gibt die relative oder absolute Vorzeichenbewegung in y-Richtung an.

ExtraInformation

Gibt gerätespezifische Informationen an.

Hinweise

Als Reaktion auf IRP_MJ_READ (Mouclass) -Anforderungen überträgt Mouclass null oder mehr MOUSE_INPUT_DATA-Strukturen aus der internen Datenwarteschlange an den Microsoft Win32-Subsystempuffer.

Anforderungen

Anforderung Wert
Header ntddmou.h (include Ntddmou.h)

Weitere Informationen

IRP_MJ_READ (Mouclass)

MouseClassServiceCallback