您的位置:首页 > 编程语言 > C#

C#窗口和程序的退出

2016-07-22 16:55 232 查看
Application.Exit();
                 // 通知所有消息泵必须终止,并且在处理了消息以后关闭所有应用程序窗口。

                 //  由 .NET Compact Framework 支持。
Form.Close();      //关闭窗口(主程序还没有退去)

 

要点:

1.程序从Application.Run(new
  Form1)开始,到Application.Exit()结束,销毁窗体,回收资源。 这之中,如果你打开了1个窗体,两个语句就是一样,如果打开多个,比如你Form1里又开了form2,form3等等,那么,你除了Application.Run()参数以外的实例,执行close就是关闭那个窗体,程序不退出,Application.Exit就是关闭包括窗口在内的整个程序。

 

2.要退出程序,并且不是在主窗口退出,用Application.Exit(); 

如果是主窗口,可以直接用this.Close();

3.Form.Close();
是关闭当前窗口,如果只有一个窗口或者是MDI里面的主窗口则是退出程序,是一种安全式 ,而 Application.Exit();则是强制结束进程,有时必须要采用这个退出才有效,比如线程锁住的时候, 一般情况下我认为用form.close()是不错的方法。

4. 在显示为无模式窗口的
Form 上调用 Close 方法时,不能调用 Show 方法使窗体可见,因为窗体的资源已被释放。若要隐藏窗体然后又使其可见,请使用 Control.Hide 方法。
5.当调用 Application.Exit 方法以退出应用程序时,不引发 Form.Closed 和 Form.Closing 事件。如果在必须执行的其中一个事件中有验证代码,则在调用 Exit 方法之前,应分别为每个打开的窗体调用 Form.Close 方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: