CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

视图类初始化中无法创建对话框

楼主xbgs(delphifan)2006-03-28 11:52:12 在 VC/MFC / 基础类 提问

在CView类中建议一个对话框的指针:  
  CMyDlg   *   pdlg;  
  然后在OninitialUpdate()函数中创建此对话框:  
  pDlg   =   new   CMyDlg();  
  pDlg->Create(IDD_MyDlg,   this);   //到这一步就编译不通过,   我意识到是指针指向了视图类指针,但是去掉this后仍然编译不通过,   不知道怎么样才能创建此对话框?  
  也就是此对话框的父类应该写成什么?  
   
   
  在view类中的其他不是初始化的函数中都可以运行,   但是就是在初始化的函数中不能运行,例如   oninintialupdate()   onshowwindow()     oncreate()     precreatewindow()   等等函数中都不能运行,   不知道是什么原因阿?  
   
  我的视图类是基于formview的。  
   
  是不是在视图类还没有创建的时候不能加载其它对话框啊?  
   
  有很多初始化都不能完成不知道是什么原因啊? 问题点数:50、回复次数:7Top

1 楼hlidea()回复于 2006-03-28 12:02:35 得分 0

刚试了一下,没有任何问题,在View里面CMyDlg头文件加了吗Top

2 楼hlidea()回复于 2006-03-28 12:04:47 得分 20

我的代码如下  
  void   CXXXView::OnInitialUpdate()  
  {  
  CFormView::OnInitialUpdate();  
  GetParentFrame()->RecalcLayout();  
  ResizeParentToFit();  
  pdlg=new   CMyDlg();  
  pdlg->Create(IDD_DIALOG1);  
  pdlg->ShowWindow(SW_SHOW);  
   
  }Top

3 楼hlidea()回复于 2006-03-28 12:06:04 得分 0

还有,你pdlg还是pDlg啊。搞清楚点Top

4 楼ydfivy(我就是一送外卖的)回复于 2006-03-28 12:13:00 得分 10

加以创建的.  
  你的错误是什么?能贴出来了吗?  
  Top

5 楼xbgs(delphifan)回复于 2006-03-28 13:07:50 得分 0

我的错误是:   windows产生了错误,你需要给微软发送错误报告。  
   
  我认为就是视图类没有创建的问题。  
   
  因为我重新写了一下,写了一个消息,   用sendmessage()发送就错误。  
  而用postmessage()发送就可以。  
   
  基本上可以证明是视图类还没有创建就开始create(IDD_dlg,this);     因为这个this是指向view类的,而此时view类还没有创建完成。  
   
  我想就是这个原因吧。  
  我回去再好好检查一下代码吧。    
   
  我是在view类的头文件中声明:   #incldue   “mydlg.h”  
  然后定义:CMydlg     *   pDlg;  
  然后再实现文件中:  
  pDlg   =   new     CMydlg();  
  pDlg->Create(IDD_Mydlg,   this);  
  pDlg->showwindow(rect);  
  Top

6 楼cai114(硬鸡常空(KingKong归来))回复于 2006-03-30 01:57:51 得分 0

帮你UPTop

7 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-03-30 06:25:39 得分 20

http://www.codeguru.com/Cpp/controls/propertysheet/article.php/c591/Top

相关问题

  • 初始化对话框?
  • 对话框创建的问题-不执行OnInitDialog()初始化函数
  • 对话框初始化时创建一个窗口为何出错?
  • 我写一个类创建listCtrl 为什么在对话框初始化中调用却没有出现?
  • 关于filedialog 对话框的初始化?
  • 怎么初始化一个对话框?
  • 对话框初始化问题
  • 模式对话框初始化
  • 对话框初始化的问题!
  • 视图内容初始化。

关键词

  • 视图
  • 函数
  • 指针
  • 文件
  • view
  • pdlg
  • 对话框
  • 初始化
  • 创建
  • cmydlg

得分解答快速导航

  • 帖主:xbgs
  • hlidea
  • ydfivy
  • jiangsheng

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo