系统和非系统按键

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

Windows区分系统按键和非系统按键。系统按键产生系统按键消息WM_SYSKEYDOWNWM_SYSKEYUP.非系统击键产生非系统击键消息WM_KEYDOWNWM_KEYUP.

如果您的窗口过程必须处理系统按键消息,请确保在处理消息后,该过程将其传递给DefWindowProc功能。否则,当窗口具有键盘焦点时,涉及ALT键的所有系统操作将被禁用。也就是说,用户将无法访问窗口的菜单或系统菜单,或使用ALT + ESC或ALT + TAB组合键激活不同的窗口。

系统按键消息主要由Windows而不是应用程序使用。Windows使用它们为菜单提供其内置的键盘界面,并允许用户控制哪个窗口处于活动状态。当用户键入与ALT键结合的键,或当用户键入并且没有窗口具有键盘焦点时(例如,当活动应用程序被最小化时)时,系统按键消息将被生成。在这种情况下,消息将发布到与活动窗口关联的消息队列中。

非系统按键消息由应用程序窗口使用; DefWindowProc功能与它们无关。窗口过程可以丢弃它不需要的任何非系统按键消息。