Share via


Método ITfKeystrokeMgr::KeyDown (msctf.h)

Pasa un evento de tecla abajo al administrador de pulsaciones de teclas.

Sintaxis

HRESULT KeyDown(
  [in]  WPARAM wParam,
  [in]  LPARAM lParam,
  [out] BOOL   *pfEaten
);

Parámetros

[in] wParam

Especifica el código de clave virtual de la clave. Para obtener más información sobre este parámetro, vea el parámetro wParam en WM_KEYDOWN.

[in] lParam

Especifica el recuento de repeticiones, el código de examen, la marca de clave extendida, el código de contexto, la marca de estado de clave anterior y la marca de estado de transición de la clave. Para obtener más información sobre este parámetro, consulte el parámetro lParam en WM_KEYDOWN.

[out] pfEaten

Puntero a una BOOL que, al salir, indica si se controló el evento de clave. Si este valor recibe TRUE, se controló el evento de clave y el evento no se debe reenviar a la aplicación. Si este valor es FALSE, el evento de clave no se controló y el evento se debe reenviar a la aplicación.

Valor devuelto

Este método puede devolver uno de estos valores.

Valor Descripción
S_OK
Método realizado correctamente.
S_FALSE
No hay receptores de eventos de clave instalados.
E_INVALIDARG
Uno o varios parámetros no son válidos.

Comentarios

Si este método es correcto y pfEaten recibe TRUE, la aplicación no debe procesar el evento clave down. Si este método no devuelve S_OK o pfEaten recibe FALSE, la aplicación debe procesar el evento clave down. A continuación se muestra un ejemplo de cómo se implementa.


if(msg.message == WM_KEYDOWN)
{
    if( pKeyboardMgr->TestKeyDown(msg.wParam, msg.lParam, &fEaten) == S_OK 
        && fEaten 
        && pKeyboardMgr->KeyDown(msg.wParam, msg.lParam, &fEaten) == S_OK 
        && fEaten)
    {
        //The key was handled by the keystroke manager or a TSF text service. Do not pass the key to the application. 
        continue;
    }
    else
    {
        //Let the application process the key. 
    }
}

Si el administrador de pulsaciones de teclas no controla el evento de clave, pasa el evento de clave a los servicios de texto TSF mediante una llamada al método ITfKeyEventSink::OnKeyDown del servicio de texto de TSF.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows 2000 Server [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado msctf.h
Archivo DLL Msctf.dll
Redistribuible TSF 1.0 en Windows 2000 Professional

Consulte también