MFC加速键Acceleretor使用及详细介绍

您所在的位置:网站首页 打开文档的快捷组合键是什么 MFC加速键Acceleretor使用及详细介绍

MFC加速键Acceleretor使用及详细介绍

2024-07-12 18:47| 来源: 网络整理| 查看: 265

简介:

Acceleretor 从字面上来看是加速键,实际功能是给程序中的控件设置快捷键,设置好以后,按下设置的快捷键效果和点击控件是一样的。

注意:加速键的作用范围是程序,当前程序处于激活状态的时候加速键才会生效

使用:

对于MFC多文档程序单文档程序等,直接在资源视图中的Acceleretor资源中添加新项绑定控件ID和快捷键就好了。

对于对话框程序,我们要做一些额外的操作,对话框程序添加Acceleretor 加速键如下步骤:

新建一个基于对话框的工程,添加一个按钮,修改按钮ID,这里为ID_BTN_OPENFILE,为按钮添加消息响应事件,这里我打开文件保存对话框:

void CAccelDlg::OnBtnOpenfile() { // TODO: Add your control notification handler code here CFileDialog dlg (TRUE); dlg.DoModal (); }为工程添加一个加速键资源,添加一条,注意ID要和按钮的ID相同,只有这样才能产生关联

为主对话框类添加一个加速键变量成员:

HACCEL m_hAccel;在对话框的OnInitDialog初始化函数中加载加速键资源

// 加载加速键资源 m_hAccel = LoadAccelerators (AfxGetInstanceHandle (), MAKEINTRESOURCE(IDR_ACCELERATOR1));

然而对话框要处理加速键需要处理按键消息,翻译加速键,添加虚函数:PreTranslageMessage,在函数里添加对加速键的翻译函数

BOOL CAccelDlg::PreTanslateMessage(MSG* pMsg) { if(WM_KEYFIRSTmessage && pMsg->message message >= WM_KEYFIRST && pMsg->message message


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3