TranslateMessage function (winuser.h)
Translates virtual-key messages into character messages. The character messages are posted to the calling thread's message queue, to be read the next time the thread calls the GetMessage or PeekMessage function.
BOOL TranslateMessage( const MSG *lpMsg );
Type: const MSG*
If the message is translated (that is, a character message is posted to the thread's message queue), the return value is nonzero.
If the message is not translated (that is, a character message is not posted to the thread's message queue), the return value is zero.
The TranslateMessage function does not modify the message pointed to by the lpMsg parameter.
TranslateMessage produces WM_CHAR messages only for keys that are mapped to ASCII characters by the keyboard driver.
If applications process virtual-key messages for some other purpose, they should not call TranslateMessage. For instance, an application should not call TranslateMessage if the TranslateAccelerator function returns a nonzero value. Note that the application is responsible for retrieving and dispatching input messages to the dialog box. Most applications use the main message loop for this. However, to permit the user to move to and to select controls by using the keyboard, the application must call IsDialogMessage. For more information, see Dialog Box Keyboard Interface.
For an example, see Creating a Message Loop.
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|
|Header||winuser.h (include Windows.h)|
|API set||ext-ms-win-ntuser-message-l1-1-0 (introduced in Windows 8)|