精华内容
下载资源
问答
  • 打开某窗体frm1,此窗体打开的条件是必须存在某个值,所以打开此窗体时,需要OnLoad事件 打开另外一窗体frm2进行选择。 现流程如下: 1.frm2选择到值,直接把值传入frm1使用,没有什么问题。 2.frm2...

    http://www.cnblogs.com/linfuguo/archive/2007/01/10/616539.html


    打开某窗体frm1,此窗体打开的条件是必须存在某个值,所以在打开此窗体时,需要在OnLoad事件中
    打开另外一窗体frm2进行选择。

    现流程如下:
    1.在frm2中选择到值,直接把值传入frm1使用,没有什么问题。
    2.在frm2中未选择到值,需要在关闭frm2的同事,也在关闭frm1,因为frm1执行的条件是必须存在此值。

    上述问题2中的用普通的this.close方法不能实现,错误信息如下:
    this.Close() 或 this.Dispose()时 都会出错:
    "执行 CreateHandle() 时无法调用值 Dispose()"
    "执行 CreateHandle() 时无法调用值 Close()"

    因为在OnLoad事件中,当前窗体的句柄Handle还没有创建完成
    所以不能直接进行关闭操作,变通的实现方法如下:

    protected override void OnVisibleChanged(EventArgs e)
    {
        base.OnVisibleChanged(e);
        if (条件)
            this.Close();
    }
    也可以重写 OnShown 或者在 Shown 事件响应中写。

    展开全文
  • WPF(C#)应用程序在窗体全关闭后无法退出...其他可能的原因:Application.MainWindow程序被置为null——这是猜测的,因为我遇到了次出现无法退出进程的情况,但检查过了各个线程应该没有前台线程且应该都是...

    WPF(C#)应用程序在窗体全关闭后无法退出程序、无法退出进程的解决办法之一

    一、可能导致无法退出进程的原因

    • 进程中有非后台线程仍然在运行:应检查是否存在Thread类实例化的线程,然后确认是否都设为了后台线程。
    • 其他可能的原因:Application.MainWindow在程序中被置为null——这个是猜测的,因为我遇到了一次出现无法退出进程的情况,但检查过了各个线程应该没有前台线程且应该都是可以正常退出的,但执行过一次Application.MainWindow=null然后就出现了所有窗体都关闭了但无法退出进程的情况。

    二、解决办法

    如上所述:

    • 所有实例化的线程全部设为后台线程,如果没有显示设为后台线程则都是前台线程
    • 如果还是不能解决,尝试显示地给App的退出方式设为“OnMainWindowClose”或者“OnLastWindowClose”,在App.xaml中进行设置即可
    • 如果还是不能解决,尝试在主窗体的Loaded事件中,将Applicationd.MainWindow设为主窗体(Application.MainWindow=this)
    • 如果还是不行,在主窗体的OnClosing事件中调用System.Envirenment.Exit(0);——这里的退出代码还未研究,用0应该是没问题的

    关于C#的进程退出、程序退出方面没有深入研究,但上述办法应该是可行的,或者可以提供一个解决的思路。如有错误,还请指正、包涵!

    展开全文
  • 在窗体的Load时怎么退出窗体

    千次阅读 2007-04-05 13:04:00
    现在需要在窗体A的OnLoad事件检查一个条件,如果条件不成立,则退出窗体,但我用this.Close() 或 this.Dispose()时 都会出错:"执行 CreateHandle() 时无法调用值 Dispose()""执行 CreateHandle() 时无法调用值...

    现在需要在窗体A的OnLoad事件中检查一个条件,如果条件不成立,则退出此窗体,但我在用
    this.Close() 或 this.Dispose()时 都会出错:
    "执行 CreateHandle() 时无法调用值 Dispose()"
    "执行 CreateHandle() 时无法调用值 Close()"


    请问这个怎么解决,代码如下

            private void A_Load(object sender, EventArgs e)
            {
                if(条件不成立)
                {
                    this.Close();
                }

            }


     

    解决方法:

    protected override void OnVisibleChanged(EventArgs e)
    {
        base.OnVisibleChanged(e);
        if (定义条件)
            this.Close();
    }


    --------------------------------------------------------

    实例:


            protected override void OnVisibleChanged(EventArgs e)
            {
                base.OnVisibleChanged(e);
                if (!(pModule.svr != null && pModule.svr.IsRun))
                {
                    this.Close();//在OnLoad事件中,当前窗体的句柄Handle还没有创建完成,所以不能直接进行关闭操作会出错:"执行 CreateHandle() 时无法调用值 Close()"
                    return;
                }
            }

     

    注:


    1、必须用protected/public,不能用private,否则会报错:

        “错误 1 “hnkywz2007.Win.PBClient.OnVisibleChanged(System.EventArgs)”: 虚拟成员或抽象成员不能是私有的 E:/hnky2007new/hnkywz2007/ZYB/PBClient.cs 119 31 hnkywz2007”

    2、override:继承重写 

    展开全文
  • C#退出当前窗体,显示另一个窗体

    千次阅读 2014-12-10 17:44:35
    this.Hide(); Form Login = new Form(); Login.Show();Login为要显示的窗体的名字
    this.Hide();
    Form Login = new Form();
    Login.Show();
    Login为要显示的窗体的名字
    展开全文
  • 开发C#WinForm窗体程序时,没有遇到过,运行或者调试程序的过程,明明关闭了子窗口,程序并没有退出来, 我们编辑不了,要手动关闭停止调试或全部中断等操作后,程序才退出来,这样会不会觉得挺烦的? 我就...
  • Android多窗体退出

    2015-05-30 14:01:11
    实现点击一个窗体退出按钮,打开的所有界面都退出。 一、创建Application子类,书写需要的方法:把打开的activity放进集合、关闭所有窗体。 二、清单文件下application节点下注册 三、activity获取...
  • C# 窗体退出和控制台退出

    千次阅读 2012-08-10 14:59:59
    若是c#windows窗体程序的退出很简单,可以用Application.exit()和Application.close(),控制台应用程序要用Environment.exit(0).
  • Winform窗体动画载入和退出 动画的载入窗体效果,在退出时也附带动画效果。
  • C#实现窗体程序的退出按钮功能

    千次阅读 2019-08-16 10:58:40
    C#的窗体程序点击退出按钮,退出当前程序。 使用的是Dispose方法。 Dispose 释放Component占用的资源。 重载 Dispose() 释放由 Component 使用的所有资源。 Dispose(Boolean) 释放由 Component 占用的非...
  •  只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若托管线程(非主线程),也无法干净地退出;Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若托管线程(非主线程),也无法干净...
  • 点击窗体右上角关闭按钮的时候弹出确认窗体,点击确认退出,点击取消,... 这样会出现死循环,无法退出窗体 实例代码: private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { if (MsgBox
  • 1.首先对登录结果作一个判断 登录功能的实现可以参考我上一篇博客:https://blog.csdn.net/weixin_44916185/article/details/105109391 如果登录成功,则将用户名传进主窗体,并将登录窗体的DialogResult结果设置为...
  • 编写一个窗体程序 (1)包含一个菜单条,一个菜单,一个菜单项为退出。 (2)当点击“退出”菜单项时,能结束应用程序。 package rj.com; import java.awt.event.ActionEvent; import java.awt.event....
  • C# 窗体调试自动退出

    2020-01-07 19:55:07
    出现“程序“[4848] *****.exe”已退出,返回值为 0 (0x0)”错误。... 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若托管线程(非主线程),也无法干净地退出; 2.Application.Exi...
  •  只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若托管线程(非主线程),也无法干净地退出;Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若托管线程(非主线程),也无法干净...
  • WinForm窗体关闭程序退出实现

    千次阅读 2018-10-18 11:44:41
    只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若托管线程(非主线程),也无法干净地退出; 2.Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若托管线程(非主线程),也无法干净...
  • 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若托管线程(非主线程),也无法干净地退出; Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若托管线程(非主线程),也无法干净...
  • 然而开发过程,发现调用System.Environment.Exit(0);方法仍然可能出现关闭窗体后进程不退出的情况。造成这种问题的原因很可能是调用该方法时某些前台线程已经阻塞,因此,可以通过以下方式关闭: //强制结束进程...
  • WPF退出当前程序(关闭全部窗体退出程序) ...但是以上方法在有线程在执行的且是后台执行的情况,退出程序,并不是真正的退出,在进程还存在。 Application.Current.Shutdown();//当 Thread.CurrentThread.I...
  • 创建一个窗体

    2013-03-31 16:56:15
    JFrame提供了一个setTitle的方法,也可以设置这个窗体。 3.定义窗体的大小 如果不定义窗体的大小,系统会默认他是零,这样就不会的看到窗体。所以,一定要定义窗体的尺寸,我们可以从JFramesetSize设置 4....
  • C# 关于WinForm窗体程序的退出方法总结

    千次阅读 热门讨论 2019-03-09 10:05:09
    很多人对于关闭窗口都不同的需求,以下是关闭窗体的几种方法: 、关闭窗体 1. this.Close();仅仅是关闭当前窗口,若不是主窗体的话程序无法退出。 2. Application.Exit();强制所有消息终止,退出所有的窗体...
  • 要求:在窗体上创建一个文本框组件、两个命令按钮组件,命令按钮的标题分别设置为“隐藏”和“退出”, 窗体背景色设置为“粉红”。单击“隐藏”按钮后文本框消失,该按钮标题变为“显示”,单击“显示”按钮显示出...
  • C# WinForm添加窗体大小变化和退出前确认功能,就要自行添加Resize、FormClosing事件。方法如下:   frmMain.Designer.cs的InitializeComponent()添加: this.Resize += new System.EventHandler(this...
  • private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e) { if(MessageBox.Show("确定关闭?","Form",MessageBoxButtons.OKCancel) == DialogResult.Ca
  • java子窗体关闭时防止主窗体退出

    千次阅读 2017-01-10 11:43:58
    private void formWindowClosing(java.awt.event.WindowEvent evt) { this.setVisible(false);... //重写这方法 阻止窗口关闭 @Override protected void processWindowEvent(WindowEvent e) {
  • 我有两个窗体一个是添加数据的窗体一个是显示数据的窗体(Datagridview加载数据),我添加数据的窗体中添加一条数据后,退出添加数据的窗体退出的方法如何写,才能调用显示数据窗体中的刷新方法,将添加...
  • java退出窗体Jfream操作区别

    千次阅读 2014-09-29 17:53:29
    System.exit(0)是退出整个程序,如果窗口,全部都销毁退出。 frame.setDefaultCloseOperation()是设置用户窗体上发起 "close" 时默认执行的操作。必须指定以下选项之: DO_NOTHING_ON_CLOSE( ...
  • winform窗体关闭程序退出实现

    万次阅读 2016-05-26 10:27:06
    这篇文章主要介绍了C#WinForm程序退出方法,实例总结了技巧退出WinForm程序窗口的各种常用技巧,非常具有实用价值,需要...c#中退出WinForm程序包括很多方法,如:this.Close(); Application.Exit();Application.Exi

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,919
精华内容 19,567
关键字:

在窗体中有一个退出