winuser.h

Estructura TRACKMOUSEEVENT

[Nuevo - Windows NT]

Definición

typedef struct tagTRACKMOUSEEVENT {
    DWORD cbSize;
    DWORD dwFlags;
    HWND  hwndTrack;
    DWORD dwHoverTime;
} TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;

La estructura TRACKMOUSEEVENT se usa por la función TrackMouseEvent para hacer el trazado del puntero del ratón cuando abandona una ventana o cuando se mueve dentro de ella durante un periodo de tiempo especificado.

Descripción

cbSize: especifica el tamaño de la estructura TRACKMOUSEEVENT.

dwFlags: especifica los servicios requeridos. Este miembro puede ser una combinación de los siguientes valores:

Valor Significado
TME_CANCEL El proceso que invoca pretende cancelar una petición de trazado previa.
Se debe especificar también el tipo de trazado que quiere cancelar. Por ejemplo, para cancelar un trazado de sobre la ventana, el proceso que llame tiene que activar las banderas TME_CANCEL y TME_HOVER.
TME_HOVER El proceso que invoca quiere notificaciones de paso sobre la ventana. La notificación se entrega como un mensaje WM_MOUSEHOVER. Si se requiere un trazado de este tipo mientras ya hay otro del mismo tipo actico, el temporizador de tiempo sobre la ventana se resetea. Esta bandera se ignora si el puntero del ratón no está sobre la ventana o área especificada.
TME_LEAVE El proceso que llama quiere notificación sobre el abandono. La notificación se entrega como un mensaje WM_MOUSELEAVE. Si el ratón no está sobre la ventana o área especificada, la notificación se entrega inmediatamente y no se realiza ningún trazado más.
TME_QUERY La función llena la estructura en lugar de tratarla como una petición de trazado. La estructura se llena como si hubiese sido pasada a TrackMouseEvent para generar el trazado actual. La única diferencia es que el tiempo devuelto para dwHoverTime es siempre el actual y no HOVER_DEFAULT, si es que se especificó HOVER_DEFAULT durante la petición TrackMouseEvent original.

hwndTrack: especifica el manipulador de la ventana a trazar.

dwHoverTime: especifica el tiempo límite de sobre la ventana o área (si se especificó TME_HOVER en dwFlags), en milisegundos. Puede ser HOVER_DEFAULT, que significa que se use el tiempo límite por defecto del sistema.

Observaciones

El tiempo límite de sobre la ventana o área por defecto del sistema se inicializa en el tiempo de despliegue de un menú, que es de 400 milisegundos. Se puede llamar a SystemParametersInfo y usar SPI_GETMOUSEHOVERTIME para recuperar el tiempo límite por defecto.

El rectángulo por defecto del sistema es el mismo que para el rectángulo de doble clic. Se puede llamar a SystemParametersInfo y usar SPI_GETMOUSEHOVERWIDTH y SPI_GETMOUSEHOVERHEIGHT para recuperar el tamaño del rectángulo dentro del que el puntero del ratón debe permanecer para que TrackMouseEvent genere un mensaje WM_MOUSEHOVER.