黑马程序员技术交流社区

标题: winform中关闭窗口 [打印本页]

作者: 肖云    时间: 2012-6-10 01:34
标题: winform中关闭窗口
在winform中关闭窗口有如下两个方法:
            this.Close();
            Application.Exit();
但是这两个方法有什么区别,分别用在什么情况下?
作者: 刘豪    时间: 2012-6-10 09:01
第一个是正常关闭,第二个是异常关闭。
作者: 钟广雄    时间: 2012-6-10 09:46
this.Close();只是该应用程序中的一个winform关闭,此关闭还有后台代码运行,占CPU资源
Application.Exit(); 应用程序的退出 ,此退出后不会占占CPU资源
作者: 孙毅    时间: 2012-6-10 09:56
this.close();只是关闭当前窗口,整体程序不退出
Application.Exit(); 关闭整体程序,执行销毁窗体和回收程序所有的资源任务
作者: 牛景亮    时间: 2012-6-10 10:13
第一个关闭当前winform窗体,不退出程序
第二个关闭整个应用程序
作者: 李玲    时间: 2012-6-10 10:28
this.Close()在winform中是关闭当前对话框
Exit 方法停止在所有线程上运行的所有消息循环,并关闭应用程序的所有窗口。该方法并不强制退出该应用程序

作者: 黑马-许泽宇    时间: 2012-6-11 17:13
最好还是使用Application.Exit() ,因为他可以释放资源
用close()类似于hide方法,其实只是隐藏了窗体,当你一直new 一直close你会发现,你cpu的资源会适用的越来越多,,所以close还是会给系统带来负担的。
作者: 孙玉昌    时间: 2012-6-11 21:51
this.close();只是关闭当前窗口;Application.Exit(); 关闭整体程序,将整个项目都给关闭了,释放项目占用资源。
作者: 孙伟明    时间: 2012-6-12 17:26
this.Close()是关闭当前的窗口
application.exit()是退出整个应用程序
初来乍到 呵呵
作者: 杨雪    时间: 2012-6-12 23:15
你的一个程序可能有很多form,this.close()是关闭当前form,Application.Exit()直接把整个程序退出了。。。
作者: ren1015    时间: 2012-6-13 15:18
this.close() 窗体关闭,但内存不释放,application.exit() ,应用程序关闭 释放内存
作者: 吴伟烈    时间: 2012-6-17 23:17
this.Close()是关闭当前窗口
Application.Exit()是关闭整个应用程序
作者: 李玮    时间: 2012-6-18 11:14
this.Close()是关闭当前窗体
Application.Exit() 是退出程序,释放资源

比如,弹出的子对话框用this.Close()关闭
退出程序,一般Application.Exit()
作者: 李嫒    时间: 2012-6-19 07:52
当你需要对某个程序进行判断的时候,用Application.Exist()好些
作者: 程艳伟    时间: 2012-7-2 15:05
this.close();只是关闭当前窗体,并没有把所有程序关掉
后者是把整个工程项目都关了
作者: 戴伟    时间: 2012-7-2 22:12
比如你有一个主窗体,和一个子窗体,当你调用.Close()的时候,只是关闭某个子窗体,而应用程序的进程还是存在的,当你调用.Exit()的时候,整个应用程序都关闭,连程序进程都销毁。而当应用程序只有一个窗体的时候,.Close()和.Exit()效果是一样的。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2