非系统字符消息

【勇芳软件工作室】汉化HomePreviousNext

窗口过程可以接收四个不同的字符消息,包括WM_CHARWM_DEADCHARWM_SYSCHARWM_SYSDEADCHAR.当处理WM_KEYDOWN消息时,TranslateMessage函数会生成WM_CHAR或WM_DEADCHAR消息。类似地,当它处理WM_SYSKEYDOWN消息时,它会生成一个WM_SYSCHAR或WM_SYSDEADCHAR消息。

处理键盘输入的应用程序通常会忽略WM_CHAR消息之外的所有消息,并将任何其他消息传递给DefWindowProc函数。Windows使用WM_SYSCHAR和WM_SYSDEADCHAR消息来实现菜单助记符。

所有字符消息的【wParam中】参数包含按下的字符键的字符代码。字符代码的值取决于接收消息的窗口的窗口类。如果使用Unicode版本的RegisterClass函数来注册窗口类,则系统会向该类的所有窗口提供Unicode字符。否则,系统将从Windows字符集提供ASCII字符代码。有关Unicode的详细信息,请参阅Unicode和字符集.

字符消息的【lParam的】参数的内容与转换为生成字符消息的按键消息的【lParam的】参数的内容相同。有关【lParam的】参数的内容的信息,请参阅击键信息标志.