MFC文档的菜单栏中添加一个command响应函数

基于CFormView的应用程序,经常会在菜单栏中添加一个按钮,点击该按钮时,会弹出一个对话框~~

具体实现方式如下

1.新建一个对话框资源,同时新建一个对话框类和该资源对应,舍对话框类名为CTestDialog;

2.在资源视图中找到Menu 这个文件夹,双击里面的文件IDR_MAINFRAME,在这里我们可以添加自己想要的菜单,也可把原来的【文件】、【编辑】等菜单给删掉~~

添加菜单的方法:右击右侧空白区域,选择properties,弹出的对话框中,把pop_up勾选掉,添加一个ID和CAPTION,设ID为ID_MYTEST,caption|为【测试】

(要注意的是,最好选择View类,而不是Frame类或其他类)

3.Ctrl+W弹出类向导,message maps中的class name 选择为View类,

从Object IDs中找到我们上一步设置的ID_MYTEST,右侧的message选择Command命令,添加一个命令响应函数

4.在该函数中添加

CTestDialog dlg;

dlg.DoModal();

这两句话即可~~


其他的人的回答:

1.对应的菜单项添加WM_COMMAND消息,在命令响应函数中DoModal/Create/ShowWindow()你的对话框即可。

2.消息映射:
ON_COMMAND(菜单编号,处理函数)


.h
public:
处理函数

.cpp
处理函数
{
   CDialog dc;
   dc.domodal();
}




弹出非模态对话框的方法

(1)用类向导给菜单栏中菜单添加一个响应函数
(2) 在头文件中加入
#include "Dlg.h"
public:
CDlg *Dlg;
(3)在代码中加入
  Dlg=new CDlg(this);
  Dlg->Create(IDD_DIALOG1);  // IDD_DIALOG1为对应的菜单栏中那个按钮的ID
  Dlg->ShowWindow(SW_RESTORE); 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值