Funcția TranslateAccelerator de asteptare

Pentru a procesa acceleratoare, bucla mesaj o aplicației (sau thread's) trebuie să con?ină un apel la funcția de TranslateAccelerator . TranslateAccelerator compară intrarile de la tastatura la un tabel de accelera?ie și, dacă găsește o potrivire, traduce apăsările de taste într-un mesaj WM_COMMAND (sau WM_SYSCOMMAND). Funcția apoi trimite mesajul la o procedură de fereastra. Parametrii funcției TranslateAccelerator includ ghidajul în fereastra care va primi mesaje WM_COMMAND, mâner la tabelul de acceleratorul utilizat pentru a traduce acceleratoare, precum și un indicator spre o structură MSG con?inând un mesaj de la coada de așteptare. Următorul exemplu arată cum pentru a apela TranslateAccelerator la într-o buclă de mesaj.

în timp ce (GetMessage (amp; msg, NULL (HWND), 0, 0)) {/ / verifica pentru acționări de taste accelerator. 
 
    if (!.TranslateAccelerator (hwndMain, / / ocupa a primi fereastră haccel, / / ocupa activ accelerator tabelul & msg)) / / adresa de {date} mesaj
        TranslateMessage(&msg); 
        DispatchMessage(&msg); 
    } 
} 

 

Index