Aufrufen der TranslateAccelerator-Funktion

Um Zugriffstasten zu verarbeiten, muss eine Anwendung (oder Threads) Nachrichtenschleife einen Aufruf an die TranslateAccelerator -Funktion enthalten. TranslateAccelerator Tastenanschläge zu einer Zugriffstastentabelle vergleicht und wenn es eine Übereinstimmung findet die Tastatureingaben in eine Nachricht WM_COMMAND (oder WM_SYSCOMMAND) übersetzt. Die Funktion sendet die Nachricht dann an einer Fensterprozedur. Die Parameter der TranslateAccelerator -Funktion sind das Handle für das Fenster, das die WM_COMMAND-Nachrichten, erhalten das Handle für die Zugriffstastentabelle verwendet, um Zugriffstasten und einen Zeiger auf ein MSG -Struktur, die eine Nachricht aus der Warteschlange zu übersetzen. Im folgenden Beispiel wird veranschaulicht, wie rufen Sie TranslateAccelerator aus innerhalb einer Meldungsschleife.

während (GetMessage (Amp; msg, (HWND) NULL, 0, 0)) {/ / Check für Beschleuniger Tastenanschläge. 
 
    If (!.TranslateAccelerator (HwndMain, / / handle auf Fenster Haccel, / / handle aktiv Zugriffstastentabelle & msg)) / / Adresse der Nachricht Daten {}
        TranslateMessage(&msg); 
        DispatchMessage(&msg); 
    } 
} 

 

Index