创建项目
新建一个【对话框(Dialog)】的程序。然后,New 一个菜单项。
添加菜单资源
- 资源选项卡中的AutoBackups resources右键,点击插入,选择Menu,选择新建。
- 在菜单栏中添加需要添加的数据。
- 在需要显示菜单栏的资源属性处添加菜单栏ID。
新建快捷键
- 资源选项卡中的AutoBackups resources右键,点击插入,选择Accelerator,选择新建。
- 新建快捷方式(ID为菜单栏下需要使用快捷键的选项)。
添加相关代码
- 在对话框类 C***Dlg.h文件,类定义中加入变量HACCEL hAccel;
- 在对话框类C***Dlg.CPP文件中,的OnInitDialog函数中添加如下代码。
// IDR_ACCELERATOR1 是快捷键的ID
hAccel = ::LoadAccelerators(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_ACCELERATOR1));
- 添加虚函数PreTranslateMessage()。
在类选项卡中的CAutoBackupsDlg上右键选择Add Virtual Function…,在New Virtual Functions中双击PreTranslateMessage。
- 在PreTranslateMessage()函数里面添加下面的代码:
if (::TranslateAccelerator(GetSafeHwnd(), hAccel, pMsg))
return true;
对菜单栏按钮绑定相应事件
- 在类选项卡中CAutoBackupsDlg上右键选择Add Windows Message Handler…,在Class or object to handle:中选择菜单栏按钮ID,在新建Windows消息消息/事件(N):中双击COMMAND,在弹出的Add Member Function选项卡中点击OK,并对其添加相应响应事件。
运行程序
- 点击菜单栏备份按钮。
- 键盘上点击** ctrl + b **。