如何在对话框程序里使用菜单资源

自由的风 2002-09-09 03:05:24
我在对话框里加了菜单,然后没有为菜单添加新类,把菜单项的消息响应添加在对话框类里,然后在菜单的项的消息处理里写了句MessageBox,但是没有执行,有什么办法做到吗?????????
...全文
58 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
自由的风 2002-09-10
  • 打赏
  • 举报
回复
昨天回家后试了试用.net来写,看来VC7把这个方面做的很好,但我的工程现在不太可能转换成VC7的,一转化就出很多的错了,所以还是用VC6,不知道有人能帮着解决吗?
自由的风 2002-09-09
  • 打赏
  • 举报
回复
再没有人说话的话,我就要回去了,看来今天有没有办法搞定啦:(
hdsw21st 2002-09-09
  • 打赏
  • 举报
回复
关注!!!!!!!!!!!
自由的风 2002-09-09
  • 打赏
  • 举报
回复
我是把事件响应添加到对话框中的,不知道如何和对话框关连起来呢?
自由的风 2002-09-09
  • 打赏
  • 举报
回复
我本来想为菜单资源添加个类的,按下CTRL+W后,有新建类和是用已有类,我用新建类是,发现基类选项里没有CMenu,所以有选择添加到现有类,但是添加了处理后,在处理代码里写了句Messagebox,都不能实现,断点跟踪,发现跟本就没有下来。原因大概是内有和对话框关连,有办法吗????
futurewf 2002-09-09
  • 打赏
  • 举报
回复
你应当在button的响应函数中添加api来显示menu,在classwizard里面添加菜单的响应函数,
一下是在button的click事件中:
CMenu muRoot;
VERIFY(muRoot.LoadMenu(IDM_DATA_MUPRINT));
CMenu *pPopupPrint = muRoot.GetSubMenu(0);
ASSERT(pPopupPrint != NULL);
pPopupPrint->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y,this);
pPopupPrint->DestroyMenu();

没错,已经编译通过了。运行正常。
自由的风 2002-09-09
  • 打赏
  • 举报
回复
不好意思了,是我没有说清楚,我的菜单是在一个button按下后,在button控件的下面显示的,这个要用到控件的子类化吧,或是你有更好的实现方法呢?我的Menu资源的ID是IDR_MENU1,我在对话框的构造涵数里这样写的:GetDlgItem(IDR_MENU1)->SubclassWindow(this->GetSafeHwnd);但是有错呀,有什么办法呢??
LeoKing 2002-09-09
  • 打赏
  • 举报
回复
可以呀,可以在对话框类里对该菜单进行事件处理:)
你是怎么做的,我做了一个,增加了一个菜单,File->Close(Close的ID号是IDM_CLOSE),然后把菜单加入到对话框里:直接在对话框属性里的Menu里加入刚建好的Menu的ID号,再用ClassWizard为IDM_CLOSE创建消息处理事件函数:
void CDlgDlg::OnClose()
{
// TODO: Add your command handler code here
::AfxMessageBox ("Close");
}
当你点Close菜单时,就会弹出一个对话框:)
你可以试试,从题目看不出你什么地方出了问题,建议重做一次,没准就好使了:)
rivershan 2002-09-09
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc.asp?id=265
在Dialog中使用Menu和Toolbar
shailq 2002-09-09
  • 打赏
  • 举报
回复
楼上是对的
冰壶2013 2002-09-09
  • 打赏
  • 举报
回复
没有错,可以执行啊!
你看看有没有大意之处!

步骤1:新建一个菜单资源,ID为IDR_MENU1;
步骤2:在对话框资源点右键,选择Properties,在Menu选择处选择IDR_MENU1菜单;
步骤3:在classwizard中Message Maps,选择对话框类,选中你菜单中的某个ID,生成COMMAND的消息响应,里面加入代码,就OK啦!

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧