VC++加速键的加入方法

来源:百度知道 编辑:UC知道 时间:2024/05/16 16:54:47
VC++加速键的加入方法是什么啊?

如果你不想了解具体的实现过程那么只需要:
在资源编辑器里面添加:Accelaretor资源,然后在其中添加加速键。
每个加速键都要有一个对应ID,一般格式如下:
响应ID 修饰键 键 键类型
ID_FILE_OPEN Ctrl O VURTKEY
之后MFC就会为你自动响应你的加速键,前提是,加速键对应的ID已经有对应的消息响应函数。(对应ID一般是菜单的ID,所以响应函数是菜单的消息响应函数)
如果你想确切知道加速键的运作过程:
MFC在默认的消息循环中,用一个API函数截获加速键,并把它转换成WM_COMMAND消息源代码如下:
// 主消息循环:
while (GetMessage(&msg, NULL, 0, 0))
{
if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))//加速键截取转换成通告消息
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
这样,键盘上按下按键时,直接触发通告消息,而不是WM_CHAR消息。