Chiamando la funzione TranslateAccelerator

Per elaborare gli acceleratori, un'applicazione (o del thread) ciclo di messaggi deve contenere una chiamata alla funzione TranslateAccelerator . TranslateAccelerator confronta le battiture a una tabella di acceleratore e, se viene trovata una corrispondenza, si traduce la sequenza di tasti in un messaggio WM_COMMAND (o WM_SYSCOMMAND). La funzione quindi invia il messaggio di una routine della finestra. I parametri della funzione TranslateAccelerator includono l'handle per la finestra che riceverÓ i messaggi WM_COMMAND, l'handle alla tabella acceleratore utilizzata per tradurre gli acceleratori e un puntatore a una struttura MSG contenente un messaggio dalla coda. Nell'esempio seguente viene illustrato come chiamare TranslateAccelerator all'interno di un ciclo di messaggi.

mentre (GetMessage (amp; msg, (HWND) NULL, 0, 0)) {/ / Check for battiture acceleratore. 
 
    if (!.TranslateAccelerator (hwndMain, / / handle di ricevere la finestra haccel, / / handle a tabella accelerator attivo & msg)) / / indirizzo del messaggio dati {
        TranslateMessage(&msg); 
        DispatchMessage(&msg); 
    } 
} 
 

Rimedio: Inserire il CD-ROM CD di MSDN Library.

Index