网站首页  词典首页

请输入您要查询的计算机术语:

 

术语 CWnd::OnSysKeyDown
释义 CWnd::OnSysKeyDown

afx_msg void OnSysKeyDown( UINT nChar, UINT nRepCnt, UINT nFlags );

参数:
nChar指定了被按下的键的虚拟键码。
nRepCnt指定了重复计数。
nFlags指定了扫描码、键暂态、以前的键状态和上下文代码,如下面的列表所示:
含义
0-7扫描码(依赖于OEM)。高位字的低位字节
8扩展键,如功能键或数字键盘上的键(如果该键为扩展键,则返回1;否则返回0)
9-10没有使用
11-12Windows内部使用
13上下文代码(如果键被按下时ALT键是被按住的,则为1;否则为0)
14以前的键状态(如果键在调用前被按下,则为1;否则为0)
15暂态(如果键是要被放开,则为1;如果键是要被按下,则为0)
对于OnSysKeyDown调用,键暂态位(15位)为0。如果按下键时ALT键被按下,则上下文代码位(13位)为1;如果因为没有窗口拥有输入焦点消息被发送到活动窗口时,它为0。

说明:
如果CWnd对象具有输入焦点,则当用户按住ALT键然后按下其它键时,框架就调用OnSysKeyDown成员函数。如果没有窗口具有当前的输入焦点,活动窗口的OnSysKeyDown成员函数将会被调用。接收调用的CWnd对象可以通过检查nFlags中的上下文代码位来区别这两种环境。
当上下文代码为0时,OnSysKeyDown接收到的WM_SYSKEYDOWN消息可以被传递给Windows的函数TranslateAccelerator,它将处理这个消息,就像这是一种普通的键盘消息而不是系统键消息。
由于自动重复,在接收到WM_SYSKEYUP消息之前,可能会产生多个OnSysKeyDown调用。以前的键状态(14位)可以用来确定OnSysKeyDown调用是代表第一个按下暂态还是重复的按下暂态。
对于IBM增强101和102键键盘,增强键包括键盘主体部分的右ALT键和右CTRL键;数字键盘左侧的INS,DEL,HOME,END,PAGE UP,PAGE DOWN和箭头键;以及数字键盘上的斜杠(/)和ENTER键。一些其它的键盘可能支持nFlags中的扩展键位。
注意 框架调用这个成员函数以允许你的应用程序处理一个Windows消息。传递给你的成员函数的参数反映了接收到消息时框架接收到的参数。如果你调用了这个函数的基类实现,则该实现将使用最初传递给消息的参数(而不是你提供给这个函数的参数)。

请参阅:
::TranslateAccelerator, WM_SYSKEYUP, WM_SYSKEYDOWN
随便看

 

MFC类库中文详解手册包含4274条MFC类库参考词条,基本涵盖了Microsoft基本类库中的类、全局函数、全局变量和宏的内容,是计算机编程的有利工具。

 

Copyright © 2004-2023 Winrtm.com All Rights Reserved
京ICP备2021023879号-40 更新时间:2024/10/6 12:34:04