请问各位大虾,小弟创建了一个ATL工程,然后在这个工程中添加了一个控件,现在小弟要实现在调用这个控件的某个函数中弹出一个对话框,请问如何才算是正确地往工程中添加对话框?
我是这么做的:
1、在classview里面,右击工程后选择“new ATL object”
2、选择miscellaneous中的对话框,并赋其名称为DlgSocMes,于是生成了一个继承自CAxDialogImpl的CDlgSocMes对话框类
3、在控件类中添加一个CDlgSocMes对象:dlgT,
4、在控件的构造函数中添加: dlgT.Create( NULL );
dlgT.ShowWindow( SW_SHOW );
这样做运行是没有问题的,但是程序退出的时候出现异常,提示说:
ATL: ERROR - Object deleted before window was destroyed
各位大哥帮帮忙啊!跪求!
我是这么做的:
1、在classview里面,右击工程后选择“new ATL object”
2、选择miscellaneous中的对话框,并赋其名称为DlgSocMes,于是生成了一个继承自CAxDialogImpl的CDlgSocMes对话框类
3、在控件类中添加一个CDlgSocMes对象:dlgT,
4、在控件的构造函数中添加: dlgT.Create( NULL );
dlgT.ShowWindow( SW_SHOW );
这样做运行是没有问题的,但是程序退出的时候出现异常,提示说:
ATL: ERROR - Object deleted before window was destroyed
各位大哥帮帮忙啊!跪求!
解决方案 »
- vc2005代码区莫名奇妙的问题
- 利用MFC做界面时候的问题 急啊!!!在线等
- 有关浮点数转换字符串的问题,一经解决,立即揭帖送分!!!
- 请问谁知道微软的 Speech SDK 5.0怎么下载呀?
- 谁有用CSocket类写的UDP接收端(服务端)的例子? 或者帮我搞定下边的错误也一样
- 怎么设置网卡的模式
- 鼠标双击打开cfiledialog里面的文件有时候会出现程序跑飞的情况?
- 菜菜的菜鸟的4问题!
- VC 实现Vista/Win7系统中UAC权限提升切换
- 哪位大虾知道哪有Think in C++这本书(chm格式的)?
- 如何将虚拟键VK_SPACE转换成shot FAR *类型的数据?
- 关于Check的问题
dlgT.DoModel( );
DoModal()可以,程序可以正常显示和关闭。不过小弟还有个麻烦,我不需要窗体显示出来,我主要用这个窗体进行消息传递。我在使用socket的时候,需要传递一些accept,connect等消息,所以借用一个这个窗体的消息机制转发到一个由外部设定的消息窗口中去。所以dlgT最好还是不要显示出来。为什么我用
dlgT.Create( NULL );
dlgT.ShowWindow( SW_SHOW );
这样子,程序就会在dlgT的析构函数中出错呢。
ATL非模态对话框调用与MFC对话框不同,首先要Create,然后ShowWindow,用完后必需调用它的DestroyWindow成员函数,如果未调用则报
ATL: ERROR - Object deleted before window was destroyed