Condividi tramite


Metodo ITfKeystrokeMgr::TestKeyUp (msctf.h)

Determina se il gestore delle sequenze di tasti gestirà un evento di up della chiave.

Sintassi

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

Parametri

[in] wParam

Specifica il codice della chiave virtuale della chiave. Per altre informazioni su questo parametro, vedere il parametro wParam in WM_KEYUP.

[in] lParam

Specifica il numero di ripetizioni, il codice di analisi, il flag di chiave estesa, il codice di contesto, il flag di stato chiave precedente e il flag di stato di transizione della chiave. Per altre informazioni su questo parametro, vedere il parametro lParam in WM_KEYUP.

[out] pfEaten

Puntatore a un valore BOOL che indica se l'evento chiave viene gestito. Se questo valore riceve TRUE, l'evento chiave viene gestito e l'evento non deve essere inoltrato all'applicazione. Se questo valore è FALSE, l'evento chiave non viene gestito e l'evento deve essere inoltrato all'applicazione.

Valore restituito

Questo metodo può restituire uno di questi valori.

Valore Descrizione
S_OK
Il metodo è stato eseguito correttamente.
S_FALSE
Non sono installati sink di eventi chiave.
E_INVALIDARG
Uno o più parametri non sono validi.

Commenti

Un'applicazione può determinare se un evento chiave viene gestito dalla gestione delle sequenze di tasti con questo metodo. Se questo metodo ha esito positivo e pfEaten riceve TRUE, l'applicazione deve chiamare ITfKeystrokeMgr::KeyUp. Se questo metodo non restituisce S_OK o pfEaten riceve FALSE, l'applicazione non deve chiamare ITfKeystrokeMgr::KeyUp . Di seguito è riportato un esempio di implementazione.


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

Se la gestione delle sequenze di tasti non gestisce l'evento chiave, passa l'evento chiave al servizio di testo TSF chiamando il servizio di testo TSF ITfKeyEventSink::OnTestKeyUp .

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione msctf.h
DLL Msctf.dll
Componente ridistribuibile TSF 1.0 in Windows 2000 Professional

Vedi anche