vs2010 对话框怎么添加菜单栏

vs2010 对话框怎么添加菜单栏,第1张

一、将Menu加入Resource视图中

在WorkSpace中的Resource视图下,在左边目录的任意位置上,先右键—->选择Insert Resource(插入资源)选项,在d出的对话框中选择Menu以后,再点击,new按钮,菜单就会添加成功了,但是现在还没有完成,还不能进行编译,因为现在的菜单时空的,在编译的时候会被清除的。

二、用菜单编辑器添加菜单栏及菜单项

菜单添加成功后,菜单编辑器自动打开,可以在其中添加菜单栏及菜单项,比较简单。

三、将菜单加载到你的对话框

第一步中添加一个菜单项,这是菜单就真正的加到了你的工程中了,接下来就是如何将菜单加载到你的对话框中了。

打开你新加入的菜单项,单击“项目”–>“添加现有项”,在这里选择已有的类,就是你要为其添加菜单的对话框的类,例如,***Dlg.cpp。然后确定。

四、在相应的文件中添加代码

// 打开对话框头文件***Dlg.h,声明CMenu 变量,例如m_Menu

//打开***Dlg.cpp 文件,在***Dlg::OnInitDlg()中加入如下语句

m_Menu.LoadMenu(IDR_MENU1) // IDR_MENU1为你加入的菜单的ID,在Resource视图的Menu文件夹下可以找到,如果代码提示中说IDR_MENU1没有定义的话(我遇到了这个问题,ID一样,但是提示没有定义,我是重新新建了一个工程就解决了)。

SetMenu(&m_Menu)

如果不出现奇葩问题的话这样就OK了,调试一下,菜单就已经出现在对应的对话框中。

五、为菜单下面的每个Item添加消息响应函数

第一步:在菜单项上面右键—->选择Add Event Handler,

第二步:根据自己的要求,选择好类、定义好函数名即可。

方法有很多

先说个最简单的

1. 在工程的资源里面加1个菜单和3个对话框(假设ID是IDR_MENU1, IDD_DIALOG1, IDD_DIALOG2, IDD_DIALOG3)

2. 在菜单添加要的选项, 对话框里面拖你要的控件

3. 在主对话框的OnInit函数里写以下代码

CMenu* menu = new CMenu

menu->LoadMenu(MAKEINTRESOURCE(IDR_MENU1))

this->SetMenu(menu)

到现在我们已经把菜单加到主对话框里了, 节下来是响应菜单项

4. 对menu的某一项右键, 添加一个COMMEND MESSAGE, 系统会自动生成一个函数, 在函数里面写以下代码

// TODO: Add your command handler code here

CDialog* dlg = new CDialog

dlg->Create(MAKEINTRESOURCE(IDD_DIALOG1))

dlg->ShowWindow(1)

5. 其他两项也一样的做法


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11843021.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存