问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

VS2017 MFC应用中添加模态对话框时为其添加类弹出如下错误

发布网友 发布时间:2022-04-22 21:59

我来回答

2个回答

热心网友 时间:2023-10-05 06:19

  MFC基于对话框——右键弹出菜单,并响应函数。
  1、新建一个菜单资源,比如把菜单的ID号为IDR_MENU1。

  2、在ClassWizard中

  void CArcSoft_EffectDlg::OnRButtonDown(UINT nFlags, CPoint point)

  {// TODO: Add your message handler code here and/or call default
  CMenu menu; //定义下面要用到的cmenu对象

  menu.LoadMenu(IDR_MENU1); //装载自定义的右键菜单;

  CMenu *pContextMenu=menu.GetSubMenu(0); //获取第一个弹出菜单,所以第一个菜单必须有子菜单;

  CPoint point1;//定义一个用于确定光标位置的位置;

  GetCursorPos(&point1);//获取当前光标的位置,以便使得菜单可以跟随光标

  pContextMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point1.x,point1.y,AfxGetMainWnd()); //在指定位置显示弹出菜单;

  CDialog::OnRButtonDown(nFlags, point1)};

  这时,当右键点击对话框,就可以将菜单调出来了,如何响应菜单项有如下操作:
  3、在资源视图中右键单击菜单项,建立类向导(ClassWizard),此时会弹出一个对话框,点击第二个,加入到已存在的类,按确定。

  4、在资源视图中为菜单中的每一项建立类向导,并添加Command响应函数,然后在这个函数中加入语句就可以啦。

  ON_COMMAND(ID_COPY, OnCopy)//加Command响应函数,自动出现的灰色语句

  void CArcSoft_EffectDlg::OnCopy()
  {// TODO: Add your command handler code here
  MessageBox("复制成功!");

  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();

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

  6.消息映射:

  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);
弦的弦心距中有一组量相等那么它们所对应

热心网友 时间:2023-10-05 06:20

替换掉C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCWizards\CodeWiz\Simple这个文件夹就行了。有的安装后没有simple有的文件缺失,就会导致这个问题。你找个VS2015的换一下
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米摄像头离线人在外地怎么办 win11如何固定电脑桌面图标 QQ三国的当代杰出少年是怎么得的? 三国人物风云榜的作者简介 三国人物风云榜作者简介 三国人物风云榜目录 三国人物风云榜内容提要 w10电脑不动黑屏w10系统开机黑屏只有鼠标箭头怎么回事 ...FRAMEWORK中的Action, Control, Resource, Model到底是什么关系... windframework特点 请问使用VS2017创建的MFC工程怎么添加位图 vs2017MFC怎样编辑编辑框内容 vs2017mfc程序怎么调用mfc dll? 如图,VS2017新建MFC对话框之后,工具箱控件不可用怎么办? 求让鞋变大的方法 买一双运动鞋有点顶脚 运动鞋尺码偏小怎么变大 怎么让鞋子变大一点! 运动鞋买小了,怎么把它撑大? 运动鞋太小,有什么办法可以让鞋变大? 团队照片发朋友圈的文字短句有哪些? 东菱面包机如何只发酵面团 怎么做传统的汤种面包? 朋友圈应该怎么发,朋友圈营销十大技巧 汤种面包配方比例是多少? 关于面包用汤种法制作的问题 如何经营自己的朋友圈? 汤种面包的做法,汤种面包怎么做好吃,汤种面包的家常 面包(汤种)怎么做 朋友圈营销方法是怎样的? 企业微信为何没有朋友圈 VS2017MFC滑块控件 vs2017中 mfc怎么添加communication control这个控件 用mfc编写的程序在vs2017中能正常运行,但是点击debug下exe文件运行出错。请指教。 我安装vs2017时安装的c++没安mfc请问怎么单独添加这个组件 vs2017 mfc调用dll问题? vs2017 MFC 加法计算器 vs2017mfc成员变量没有控件变量 visual studio2017怎么查看mfc里的控件有哪些事件和方法? vs2017如何创建CSocket类 为什么vs2017新建项目没有mfc? 货币基金的收益是怎么来的 货币市场基金的收益是如何分配的? 目前市场上货币市场基金年化收益率是多少? 买货币型基金 是看每万份基金净收益还是 7日年化收益率 货币市场基金的收益跟什么挂钩?跟银行利息有关吗? 为何货币基金几乎每天都有收益?并且全是真的? 货币基金怎么计算收益? 货币型基金怎么计算收益? 货币市场基金的收益率为何一直比银行利率高 货币基金的收益分配方式是什么?