Funkcia TranslateAccelerator procesy skratky pre príkazy ponuky. Funkcia prekladá WM_KEYDOWN alebo WM_SYSKEYDOWN WM_COMMAND alebo WM_SYSCOMMAND správu (ak je položka pre kľúč v tabuľke vybratý prístupový kláves) a potom odošle WM_COMMAND alebo WM_SYSCOMMAND hlásenie priamo na vhodné okno postupu. TranslateAccelerator sa nevráti, kým okno postup spracoval správy.
int TranslateAccelerator ( HWND hWnd; / / spracovať do cieľového oknaHACCELhAccTable; / / zvládnuť akcelerátora tabuľkyLPMSGlpMsg / / address konštrukcie s hlásením);
Ak funkciu podarí, vrátená hodnota je nenulové.
Ak funkcia zlyhá, vrátená hodnota je nula. Získajte rozšírené informácie o chybách, volajte na číslo GetLastError.
Na odlíšenie správu, ktorá túto funkciu odošle z odosielajú ponuky alebo ovládacích prvkov, rozdeli slovo wParam parameter WM_COMMAND alebo WM_SYSCOMMAND správa obsahuje hodnotu 1.
Akcelerátor klávesom použiť na výber položiek v ponuke okno sú preložené do WM_SYSCOMMAND správy; všetky ostatné akcelerátora klávesom sú preložené do WM_COMMAND správy.
Keď TranslateAccelerator vráti nenulovú hodnotu a správa je preložená, uplatňovanie by nemali používať funkciu TranslateMessage spracovať správu znova.
Urýchľovač nemusí zodpovedať príkazu ponuky.
Ak príkaz akcelerátora zodpovedá položka ponuky, prihláška je poslaná WM_INITMENU a WM_INITMENUPOPUP správy, akoby používateľa sa snažili zobrazte ponuku. Avšak, tieto správy nie sú odoslané ak existuje ktorákoľvek z týchto podmienok:
Ak zadané okno aktívneho okna a nie okno má klávesnice (čo je vo všeobecnosti v prípade ak okno je minimalizované), TranslateAccelerator prekladá WM_SYSKEYUP a WM_SYSKEYDOWN správy namiesto WM_KEYUP a WM_KEYDOWN správ.
Ak sa stlačenie klávesu akcelerátora vyskytne zodpovedajúca položka ponuky pri minimalizovaní okna, ktoré vlastní v ponuke, TranslateAccelerator neposiela správu WM_COMMAND. Avšak ak akcelerátora úhoz nastane, ktorá nezodpovedá žiadnemu položiek v ponuke okno alebo v ponuke okno funkciu odošle správu WM_COMMAND dokonca aj vtedy, ak okno je minimalizované.
Windows CE: Všetky kľúčové posolstvá akcelerátora sú preložené do WM_COMMAND správy; Windows CE nepodporuje WM_SYSCOMMAND správ.
nbsp; Systém Windows &NT: vyžaduje verzia 3.1 alebo novšia.
Windows:Vyžaduje systém Windows 95 alebo novším.
Windows CE:Vyžaduje verziu 1.0 alebo novšiu verziu.
Hlavičky:Deklarovaný v súbore winuser.h.
Importovať knižnica:Použiť user32.lib.
Unicode:Implementovaný ako Unicode, ANSI verzia v systéme Windows NT.
Klávesnice-prehlad urýchľovače, klávesnice urýchľovacích funkcií, CreateAcceleratorTable, GetMessage, LoadAccelerators, MSG, PeekMessage, SetCapture, TranslateMessage, WM_COMMAND, WM_INITMENU, WM_INITMENUPOPUP, WM_KEYDOWN, WM_SYSKEYDOWN, WM_SYSCOMMAND