为什么MFC对话框非模态对象不能是静态局部变量?
来源:互联网 发布:淘宝新店铺推广怎么写 编辑:程序博客网 时间:2024/05/17 03:14
vc++深入详解 226页
问题1:
mfc单文档程序名Mybole
视图类中这段代码
void CMyboleView::OnDialog(){ // TODO: 在此添加命令处理程序代码 static CTestDlg dlg; dlg.Create(IDD_DIALOG1, this); dlg.ShowWindow(SW_SHOW);}
关闭对话框再打开会遇到debug assertion failed错误
不能Create多次
目前解决方法方法只能用指针要new出来
还有疑问
问题2:
我把它放到视类的头文件里也是报错,这是为什么啊
public:afx_msg void OnDialog();CTestDlg dlg;
解决代码
static CTestDlg dlg;if(IsWindow(dlg.m_hWnd))dlg.DestroyWindow();
原来使用静态变量出错,是因为不能Create多次
讨论地址:http://bbs.csdn.net/topics/390884128
public:afx_msg void OnDialog();CTestDlg dlg;
0 0
- 为什么MFC对话框非模态对象不能是静态局部变量?
- 为什么静态变量能初始化而局部变量不能
- 局部变量创建非模态对话框
- 为什么不能返回局部对象的应用
- 为什么不能unset类静态变量 (php)
- 为什么静态成员函数不能是const
- 为什么静态成员函数不能是const
- 抽象方法为什么不能是静态的
- 静态函数为什么不能是虚函数?
- 为什么静态成员函数不能是const
- 为什么不管是静态内部类的普通方法还是静态方法都不能访问外部类的实例变量
- Java中static为什么不能修饰局部变量?
- Java中static为什么不能修饰局部变量?
- C++ 全局对象 全局变量和局部变量 静态变量
- C++ 全局对象 全局变量和局部变量 静态变量
- C指针以及为什么不能返回局部指针变量,却可以返回局部变量
- 静态方法为什么不能使用非静态成员变量
- 非静态内部类中为什么不能存在静态变量
- iOS 应用程序开发的6个Xcode小技巧
- 金属&&核音乐入门
- MySql表数据行列转换
- chgrp
- activeMq发送消息流程
- 为什么MFC对话框非模态对象不能是静态局部变量?
- chown
- Linux NFS服务器的安装与配置
- 模板声明与定义要放在同一文件中?
- xcode项目如何上传csdn的git托管
- Android 屏幕旋转问题
- NFS 服务固定端口
- 释怀
- Struts2之全局异常和局部异常的配置