Partager via


structure MOUSE_INPUT_DATA (ntddmou.h)

MOUSE_INPUT_DATA contient un paquet de données d’entrée de souris.

Syntaxe

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;

Membres

UnitId

Spécifie le numéro d’unité de l’appareil de souris. Un nom d’appareil de souris a le format \Device\PointerPortN, où le suffixe N est le numéro d’unité de l’appareil. Par exemple, un appareil, dont le nom est \Device\PointerPort0, a un numéro d’unité de zéro, et un appareil, dont le nom est \Device\PointerPort1, a un numéro d’unité d’un.

Flags

Spécifie un OR au niveau du bit d’un ou plusieurs des indicateurs de souris suivants.

Valeur Signification
MOUSE_MOVE_RELATIVE LastX et LastY sont définis par rapport à l’emplacement précédent.
MOUSE_MOVE_ABSOLUTE Les valeurs LastX et LastY sont définies sur des valeurs absolues.
MOUSE_VIRTUAL_DESKTOP Les coordonnées de la souris sont mappées au bureau virtuel.
MOUSE_ATTRIBUTES_CHANGED Les attributs de la souris ont changé. Les autres données de la structure ne sont pas utilisées.
MOUSE_MOVE_NOCOALESCE (Windows Vista et versions ultérieures) WM_MOUSEMOVE messages de notification ne seront pas coalescés. Par défaut, ces messages sont coalés.

Pour plus d’informations sur WM_MOUSEMOVE messages de notification, consultez la documentation du Kit de développement logiciel (SDK) Microsoft.

Buttons

Spécifie les valeurs ButtonFlags et ButtonData . Mouclass utilise Buttons dans sa routine de service d’interruption pour effectuer un accès mémoire unique rapide à ButtonFlags et ButtonData.

ButtonFlags

Spécifie l’état de transition des boutons de la souris.

Indicateur Signification
MOUSE_LEFT_BUTTON_DOWN Le bouton gauche de la souris est passé à bas.
MOUSE_LEFT_BUTTON_UP Le bouton gauche de la souris est passé à haut.
MOUSE_RIGHT_BUTTON_DOWN Le bouton droit de la souris est passé à bas.
MOUSE_RIGHT_BUTTON_UP Le bouton droit de la souris est passé à haut.
MOUSE_MIDDLE_BUTTON_DOWN Le bouton central de la souris est passé à bas.
MOUSE_MIDDLE_BUTTON_UP Le bouton central de la souris est passé à haut.
MOUSE_BUTTON_4_DOWN Le quatrième bouton de la souris est passé à bas.
MOUSE_BUTTON_4_UP Le quatrième bouton de la souris est passé à haut.
MOUSE_BUTTON_5_DOWN Le cinquième bouton de la souris est passé à bas.
MOUSE_BUTTON_5_UP Le cinquième bouton de la souris est passé à haut.
MOUSE_WHEEL Les données de la roulette de la souris sont présentes.
MOUSE_HWHEEL Les données de roue horizontale de la souris sont présentes.

ButtonData

Spécifie les données de roue de la souris, si MOUSE_WHEEL est défini dans ButtonFlags.

RawButtons

Spécifie l’état brut des boutons de la souris. Le sous-système Win32 n’utilise pas ce membre.

LastX

Spécifie le mouvement relatif ou absolu signé dans la direction x.

LastY

Spécifie le mouvement relatif ou absolu signé dans la direction y.

ExtraInformation

Spécifie des informations spécifiques à l’appareil.

Remarques

En réponse aux demandes IRP_MJ_READ (Mouclass), Mouclass transfère zéro ou plus MOUSE_INPUT_DATA structures de sa file d’attente de données interne vers la mémoire tampon du sous-système Microsoft Win32.

Configuration requise

Condition requise Valeur
En-tête ntddmou.h (inclure Ntddmou.h)

Voir aussi

IRP_MJ_READ (Mouclass)

MouseClassServiceCallback