Compartir a través de


WM_TOUCH mensaje

Notifica a la ventana cuando uno o varios puntos táctiles, como un dedo o un lápiz, toca una superficie digitalizador sensible al tacto.

Parámetros

wParam

La palabra de orden bajo contiene el número de puntos táctiles asociados a este mensaje. La palabra de orden superior está reservada para su uso futuro.

lParam

Contiene un identificador de entrada táctil que se puede usar en una llamada a GetTouchInputInfo para recuperar información detallada sobre los puntos táctiles asociados a este mensaje.

Este identificador solo es válido dentro del proceso actual y no debe pasarse entre procesos, excepto el LPARAM en una llamada SendMessage o PostMessage .

Cuando la aplicación ya no requiere este identificador, la aplicación debe llamar a CloseTouchInputHandle para liberar la memoria del proceso asociada a este identificador. Si no lo hace, se puede producir una pérdida de memoria de la aplicación.

Tenga en cuenta que el identificador de entrada táctil de este parámetro ya no es válido después de pasar el mensaje a DefWindowProc. DefWindowProc se cerrará e invalidará este identificador.

Tenga en cuenta también que el identificador de entrada táctil de este parámetro ya no es válido después de reenviar el mensaje mediante PostMessage, SendMessage o una de sus variantes. Estas funciones cerrarán e invalidarán este identificador.

Valor devuelto

Si una aplicación procesa este mensaje, debe devolver cero.

Si la aplicación no procesa el mensaje, debe llamar a DefWindowProc. Si no lo hace, la aplicación pierde memoria porque el controlador de entrada táctil no está cerrado y no se libera la memoria del proceso asociada.

Comentarios

WM_TOUCH mensajes no respetan las regiones HTTRANSPARENT de las ventanas. Si una ventana devuelve HTTRANSPARENT en respuesta a un mensaje de WM_NCHITTEST , los mensajes del mouse van al elemento primario y WM_TOUCH mensajes van directamente a la ventana.

Ejemplos

El código siguiente es un ejemplo de cómo obtener información detallada de entrada táctil asociada a este mensaje.

UINT cInputs = LOWORD(wParam);
PTOUCHINPUT pInputs = new TOUCHINPUT[cInputs];
if (NULL != pInputs)
{
    if (GetTouchInputInfo((HTOUCHINPUT)lParam,
                          cInputs,
                          pInputs,
                          sizeof(TOUCHINPUT)))
    {
        // process pInputs
        if (!CloseTouchInputHandle((HTOUCHINPUT)lParam))
        {
            // error handling
        }
    }
    else
    {
        // GetLastError() and error handling
    }
    delete [] pInputs;
}
else
{
    // error handling, presumably out of memory
}
return DefWindowProc(hWnd, message, wParam, lParam);

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 R2 [solo aplicaciones de escritorio]
Encabezado
Winuser.h (incluye Windows.h)

Consulte también

Mensajes

Guía de programación de manipulaciones e inercia

Guía de programación de entrada táctil de Windows