SDL_events.h

Estructura SDL_MouseButtonEvent

Una estructura que contiene información de eventos del botón del ratón.

typedef struct SDL_MouseButtonEvent
{
    Uint32 type;        /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */
    Uint32 timestamp;   /**< In milliseconds, populated using SDL_GetTicks() */
    Uint32 windowID;    /**< The window with mouse focus, if any */
    Uint32 which;       /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
    Uint8 button;       /**< The mouse button index */
    Uint8 state;        /**< ::SDL_PRESSED or ::SDL_RELEASED */
    Uint8 clicks;       /**< 1 for single-click, 2 for double-click, etc. */
    Uint8 padding1;
    Sint32 x;           /**< X coordinate, relative to window */
    Sint32 y;           /**< Y coordinate, relative to window */
} SDL_MouseButtonEvent;

Miembros

type
SDL_MOUSEBUTTONDOWN o SDL_MOUSEBUTTONUP
timestamp
Marca de tiempo en milisegundos.
windowID
La ventana con el foco del teclado, si hay alguna.
which
El id de instancia del ratón, o SDL_TOUCH_MOUSEID, ver observaciones.
button
El botón que ha cambiado.
state
El estado del botón, SDL_PRESSED o SDL_RELEASED.
clicks
1 para click sencillo, 2 para doble-click, etc (>= 2.0.2).
x
Coordenada X, relativa a la ventana.
y
Coordenada Y, relativa a la ventana.

Observaciones

SDL_MouseButtonEvent es un miembro de la unión SDL_Event y se utiliza cuando se reporta un evento de tipo SDL_MOUSEBUTTONDOWN o SDL_MOUSEBUTTONUP. Se accede a él a través del campo button del evento.

Un evento SDL_MOUSEBUTTONDOWN o SDL_MOUSEBUTTONUP ocurre cada vez que un usuario presiona o suelta un botón del ratón.

El botón puede ser uno de los siguientes:

  • SDL_BUTTON_LEFT
  • SDL_BUTTON_MIDDLE
  • SDL_BUTTON_RIGHT
  • SDL_BUTTON_X1
  • SDL_BUTTON_X2

which puede ser SDL_TOUCH_MOUSEID, para eventos que fueron generados por un dispositivo de entrada táctil, y no un ratón real. Es posible que se desee ignorar este tipo de eventos, si la aplicación ya maneja SDL_TouchFingerEvent.