永发信息网

c#关闭窗口~有两个窗体,loginform和mainform~

答案:4  悬赏:0  手机版
解决时间 2021-01-31 07:56
  • 提问者网友:城市野鹿
  • 2021-01-30 20:57
在program.cs中改了Application.run(new loginform());
情况一
在loginform.cs中
this.hide();

new mainform().show();

发现mainform点右上角关闭后调试还没停止。

情况二
在loginform.cs中
this.close();
new mainform().show();
发现一点击登陆,两个窗口依次闪过~就闪一下,mainform也给关了~

这个this不是指的当前对象吗?谁给解释下,郁闷了~
最佳答案
  • 五星知识达人网友:笑迎怀羞
  • 2021-01-30 21:09
你好,
情况一:hide()是隐藏窗体,对象还是存在的,所以进程不会结束,可以在该窗体的closed事件中调用Application.Exit()
情况二:你不应该在loginform.cs中用new可以在program.cs中用,当登陆成功设置一个变量,然后关闭该窗体,再在program.cs中创建mainform对象。
全部回答
  • 1楼网友:轮獄道
  • 2021-01-30 23:00
这个不懂啊!
  • 2楼网友:撞了怀
  • 2021-01-30 22:47
你好! 因为你的loginform是主窗体,hide了,但是还存在进程,关闭子窗体没用。第二个还是因为主窗体关闭了,子窗体当然也不存在了 仅代表个人观点,不喜勿喷,谢谢。
  • 3楼网友:患得患失的劫
  • 2021-01-30 22:14
应该是是Application.exit();
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯