none
WinForm程序窗体关闭问题 RRS feed

  • 问题

  • 我的程序有1个登录窗体和1个主窗体,由于是连接网络的当我主窗体失效后我要重新连接,我现在的想法是关掉主窗体重新打开一个新的窗体,但现在的问题是我的就窗体无法关闭,原因:

    1、如果我把关闭主窗体放在登录事件里面的话不知道怎么找到旧的窗体

    2、因为我的窗体里包含线程,一直处于执行状态所以不存在new Form.ShowDialog()之后再关闭

    各位能否帮我想个方法,只要能实现关闭原来窗体打开新窗体就行(注:其实我还有一种方法就是只把旧窗体重连下网络,但哪种方法对我来说不太适用,下下策)

    2010年6月12日 1:42

答案

  • 个人认为是不需要关闭主窗体。

    你只需要检测不在线的时候弹出登陆窗口,提示用户重新登陆就可以了。

    至于线程,有很多办法停止他,abort,或者设置一个变量,在线程中检查,如果是true就退出线程等。

     


    family as water
    2010年6月12日 2:01
  • 你好!

         我认为也没有必要关闭主窗体!

         如果你一定要关闭,那也比较容易,在新窗体中定义一个带参数的构造函数,把主窗体的实例传递进去,然后用这个实例关闭主窗体就可以了!

         也可以自定义事件来触发关闭!


    周雪峰
    2010年6月12日 13:22
    版主

全部回复

  • 个人认为是不需要关闭主窗体。

    你只需要检测不在线的时候弹出登陆窗口,提示用户重新登陆就可以了。

    至于线程,有很多办法停止他,abort,或者设置一个变量,在线程中检查,如果是true就退出线程等。

     


    family as water
    2010年6月12日 2:01
  • 你好!

         我认为也没有必要关闭主窗体!

         如果你一定要关闭,那也比较容易,在新窗体中定义一个带参数的构造函数,把主窗体的实例传递进去,然后用这个实例关闭主窗体就可以了!

         也可以自定义事件来触发关闭!


    周雪峰
    2010年6月12日 13:22
    版主