Condividi tramite


CWnd::OnSysKeyUp

Se l'oggetto CWnd ha lo stato attivo, la funzione membro OnSysKeyUp viene chiamata dal framework quando l'utente rilascia un tasto premuto mentre il tasto ALT è stato memorizzato.

afx_msg void OnSysKeyUp(
   UINT nChar,
   UINT nRepCnt,
   UINT nFlags 
);

Parametri

  • nChar
    Specifica il codice tasto virtuale chiave che viene premuto.Per un elenco dei codici tasto virtuali standard, vedere Winuser.h

  • nRepCnt
    Specifica il numero di ripetizioni.

  • nFlags
    Specifica il codice di funzionalità, il codice di transizione chiave, lo stato del tasto precedente e il codice contestuale, come illustrato di seguito:

    Valore

    Significato

    0–7

    Codice di funzionalità (valore OEM- dipendente).Byte basso di word più significativa.

    8

    Chiave estesa, ad esempio un tasto funzione o una chiave sul tastierino numerico (1 se è una chiave estesa, in caso contrario 0).

    9–10

    Non utilizzato.

    11–12

    Utilizzato internamente da Windows.

    13

    Codice contestuale (1 se il tasto ALT viene mantenuto come chiave viene premuto, 0) in caso contrario.

    14

    Lo stato del tasto precedente (1 se la chiave è premuto prima che il messaggio venga inviato, 0 se la chiave è in).

    15

    Lo stato temporaneo (1 se la chiave è rilascianda 0, se la chiave è premere).

    Per le chiamate OnSysKeyUp, il bit di chiave transizione (15 bit) è 1.Il bit di codice contestuale (13 bit) è 1 se il tasto ALT è premuto mentre la chiave viene premuto, è 0 se il messaggio viene inviato alla finestra attiva quanto non finestra ha lo stato attivo per l'input.

Note

Se nessuna finestra ha attualmente lo stato attivo, la funzione membro OnSysKeyUp della finestra attiva è denominata.L'oggetto CWnd che riceve la chiamata è in grado di distinguere tra questi due contesti analisi del codice contestuale in nFlags.

Quando il codice contestuale è 0, il messaggio WM_SYSKEYUP ricevuto da OnSysKeyUp può essere passato alla funzione di Windows TranslateAccelerator, che lo gestisce come se fosse un messaggio principale normale anziché un messaggio di sistema chiave.In questo modo i tasti di scelta rapida (collegamento) da utilizzare con la finestra attiva anche se la finestra attiva non ha lo stato attivo per l'input.

Per IBM migliore 101 e 102 tastiere principali, chiavi avanzate sono la destra ALT e i margini destro tasti CTRL nella sezione principale della tastiera; per componenti aggiuntivi, il DEL, HOME, in FINE, PGSU, la PGGIÙ e i tasti di direzione in cluster a sinistra del tastierino numerico; e una barra (/) e tasti INVIO nel tastierino numerico.Altre tastiere supportino la chiave estesa bit in nFlags.

Per gli non STATI UNITI.. aggiornati 102 tastiere principali, rispettivamente l'angolo tasto ALT viene gestito come la combinazione di tasti CTRL+ALT.Di seguito viene illustrata la sequenza di messaggi e chiama tale risultato quando le premere e consentire all'utente questa chiave:

Sequence

Funzione di accesso

Messaggio passato

1.

WM_KEYDOWN

VK_CONTROL

2.

WM_KEYDOWN

VK_MENU

3.

WM_KEYUP

VK_CONTROL

4.

WM_SYSKEYUP

VK_MENU

[!NOTA]

Questa funzione membro viene chiamata dal framework per consentire l'applicazione per gestire un messaggio di Windows.I parametri passati alla funzione riflettono i parametri ricevuti dal framework quando il messaggio è stato ricevuto.Se si chiama l'implementazione della classe base di questa funzione, tale implementazione dei parametri passati originariamente con il messaggio e non i parametri forniti alla funzione.

Requisiti

Header: afxwin.h

Vedere anche

Riferimenti

Classe CWnd

Grafico della gerarchia

TranslateAccelerator

CWnd::OnSysKeyDown

WM_SYSKEYUP