首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 数据库 第二书店 程序员

new 出来的 Dialog , 关闭后如何从内存中销毁


缺省的CDialog::OnOK和CDialog::OnCancel函数均调用EndDialog。
因此,在模态对话框中,用户的ONOK和ONCANCEL消息都会将对话框窗口对象销毁(调用EndDialog函数)。
但是在非模态对话框中,对话框窗口对象并没有销毁,只是隐藏起来(调用EndDialog函数)。
若想真正销毁,则需重写OnOK和OnCancel函数,并在其中调用CWnd:: DestroyWindow而不是CDialog::EndDialog来关闭非模态对话框。调用CWnd:: DestroyWindow是直接删除窗口的一般方法。

代码如下:
void CServerDlg::OnCancel()
{
// TODO: Add extra cleanup here

//CDialog::OnCancel();
DestroyWindow();
}



他们设置了哪些标签:


销毁非模态Dialog

谁收藏了这个网址:


dychenyi收录

时间:2007-5-17 11:18:58 | 相关网摘

pc01收录

时间:2007-5-17 16:06:12 | 相关网摘

marchonchina收录

时间:2007-5-18 3:30:07 | 相关网摘

wanzyqyy收录

时间:2007-5-21 13:33:44 | 相关网摘

hzcpig收录

使用标签:销毁非模态Dialog,时间:2007-7-12 10:40:24 | 相关网摘

缺省的CDialog::OnOK和CDialog::OnCancel函数均调用EndDialog。
因此,在模态对话框中,用户的ONOK和ONCANCEL消息都会将对话框窗口对象销毁(调用EndDialog函数)。
但是在非模态对话框中,对话框窗口对象并没有销毁,只是隐藏起来(调用EndDialog函数)。
若想真正销毁,则需重写OnOK和OnCancel函数,并在其中调用CWnd:: DestroyWindow而不是CDialog::EndDialog来关闭非模态对话框。调用CWnd:: DestroyWindow是直接删除窗口的一般方法。

代码如下:
void CServerDlg::OnCancel()
{
// TODO: Add extra cleanup here

//CDialog::OnCancel();
DestroyWindow();
}

网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
Copyright © 2000-2008, CSDN.NET, All Rights Reserved