Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
[Cierta información se relaciona con el producto publicado previamente que puede modificarse sustancialmente antes de su publicación comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.]
Registra la ventana especificada o el subproceso actual, como compatible con el panel táctil en el sistema.
Sintaxis
WINUSERAPI
BOOL
WINAPI
RegisterTouchpadCapableWindow(
_In_ HWND hWnd,
_In_ BOOL fEnable);
WINUSERAPI
BOOL
WINAPI
RegisterTouchpadCapableThread(
_In_ BOOL fEnable);
Parámetros
RegisterTouchpadCapableWindow
- hWnd
-
Identificador de la ventana que se va a registrar o anular el registro como compatible con el panel táctil.
- fEnable
-
TRUE para registrar la ventana como compatible con el panel táctil; FALSE para anular el registro.
RegisterTouchpadCapableThread
- fEnable
-
TRUE para registrar el subproceso actual como compatible con el panel táctil; FALSE para anular el registro.
Valor de retorno
Si la función se realiza correctamente, el valor devuelto es distinto de cero.
Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError. El registro puede producir un error si el sistema no admite el registro como compatible con el panel táctil o si intenta anular el registro del subproceso y el subproceso no está registrado actualmente como capaz.
Observaciones
Al registrarse como compatible con el panel táctil, la siguiente funcionalidad del sistema cambiará:
- GetPointerDevices ahora incluirá paneles táctiles en su lista de dispositivos.
- GetCurrentInputMessageSource para los mensajes del mouse con origen en el panel táctil devolverá IMDT_TOUCHPAD como el tipo de dispositivo en lugar de IMDT_MOUSE.
- RegisterPointerDeviceNotifications generará mensajes para los teclados táctiles (tanto la llegada o salida del dispositivo como los contactos dentro o fuera del intervalo).
- La ventana (o todas las ventanas del subproceso) recibirán WM_POINTER mensajes para los gestos de dos dedos del panel táctil (paneles y zooms).
- Si estos mensajes se reenvían a DefWindowProc, se convertirán en mensajes de rueda del mouse como lo hace el sistema hoy en día para ventanas o subprocesos no compatibles con el panel táctil.
RegisterTouchpadCapableWindow : el registro de una ventana es "el último llamador gana": la funcionalidad del panel táctil de la ventana está habilitada o deshabilitada en función de la llamada más reciente a la API. La expectativa es que el propietario de la ventana se registre como capaz durante la inicialización: los componentes no deben registrar una ventana como capaz si no pueden controlar cómo controla el WM_POINTER mensajes que recibirá.
RegisterTouchpadCapableThread : el sistema realiza un seguimiento de cuántas veces el subproceso se ha registrado como capaz, por lo que si el subproceso está registrado como capaz, se debe anular el registro cuando ya no sea necesario. Un subproceso puede usar RegisterTouchpadCapableThread para registrarse temporalmente como capaz de llamar a las API que tienen un comportamiento dependiente y, a continuación, anular el registro para que se conserve el estado original del subproceso.
Puesto que GetPointerDevices y GetCurrentInputMessageSource no toman una ventana en sus parámetros, su comportamiento solo cambiará cuando todo el subproceso sea compatible con touchpad, para evitar problemas de compatibilidad al optar por una sola ventana en un subproceso que no sea consciente.
Importante
El comportamiento de algunos de los ajustes del panel táctil del sistema se implementa dentro de las API de contexto de interacción para realizar el reconocimiento de gestos en la entrada del puntero. Estos incluyen si el movimiento panorámico o el zoom se han deshabilitado explícitamente y la dirección del movimiento panorámico del contenido. Las actualizaciones futuras del sistema también pueden introducir más funcionalidad. Por lo tanto, se recomienda encarecidamente usar las API de contexto de interacción para el reconocimiento de gestos al registrarse como compatible con el panel táctil y recibir la entrada del puntero directamente, de modo que el usuario experimente un comportamiento uniforme en todas las aplicaciones. Si no usa estas API, es importante consultar la configuración del panel táctil del usuario y respetar las relacionadas con el reconocimiento de gestos, si corresponde a la experiencia del usuario de la aplicación. La introducción de la nueva configuración del sistema requeriría actualizaciones de aplicaciones, sin embargo, si se usan las API de contexto de interacción, esta nueva configuración funcionaría automáticamente según lo previsto.
En concreto, se debe usar el nuevo ProcessPointerFramesInteractionContext2 o BufferPointerPacketsInteractionContext2 , ya que proporcionan la carga de puntero completa al contexto de interacción, en lugar de simplemente el POINTER_INFO. Las mejoras futuras en el reconocimiento de gestos pueden tener en cuenta esta información. La clase PhysicalGestureRecognizer de WinRT usa estas API internamente.
Requisitos
| Requisito | Importancia |
|---|---|
| Cliente mínimo compatible | Windows 11 [solo aplicaciones de escritorio] |
| Servidor mínimo compatible | No se admite ninguno |
| Cabecera | Winuser.h (incluya Windows.h) |
| Biblioteca | User32.lib |
| DLL | User32.dll (ordinal 2689 para RegisterTouchpadCapableWindow, ordinal 2688 para RegisterTouchpadCapableThread) |