加速键使用方法详解(示例)
加速键的使用
第一步:创建加速键表
在Resource试图中添加一个Accelerator资源表,在表中根据条件输入值。
第二步:在类中添加一个HACCEL的变量
HACCEL m_hAccel;
第三步:在初始化函数里面加载对应的加速键表
m_hAccel= ::LoadAccelerators(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDR_ACCELERATOR1));
其中IDR_ACCELERATOR1表示加速键表的ID,别弄错
第四步:添加虚函数PreTranslateMessage
BOOL CAAADlg::PreTranslateMessage(MSG* pMsg)
{
if(hAccel != NULL)
{
if (TranslateAccelerator(m_hWnd, hAccel, pMsg))
return TRUE;
}
return CDialog::PreTranslateMessage(pMsg);
}
第五步:创建处理的函数,例如在头文件中定义
void MyEnter();
在.cpp文件中
CXXXDlg::MyEnter()
{
…………
}
第六步:添加消息响应
ON_COMMAND(ID_MY_ENTER,myenter)
注意ID与函数名相对应
版权声明:本文为it20120227原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。