读书人

C# 窗口关不掉解决方案

发布时间: 2012-07-31 12:33:46 作者: rapoo

C# 窗口关不掉
我这样在time_tick下这么写:
if (comm.IsOpen&&qitaselect.Substring(1, 1) == "1")////////////////////////////////////////////////需修改
{
Form12 form12 = new Form12();
form12.show();
if (zhuangtai2.Substring(6, 1) == "1")
{
}
else if (zhuangtai2.Substring(6, 1) == "0")
{
qitaselect = qitaselect.Substring(0, 1) + "0";
form12.Visible = false;
form12.Close();
}
}

我利用中断模式调试,发现当zhuangtai2.Substring(6, 1) == "0"时:

其下面的三句话: qitaselect = qitaselect.Substring(0, 1) + "0";
form12.Visible = false;
form12.Close();
都是执行了的,执行完后因总条件“qitaselect.Substring(1, 1) == "1"”不在符合就不会再来执行这段代码了;

但是问题是:这样执行后(确认form12.Visible = false;form12.Close();)都是被执行过的,但窗口就是关不掉!!!!!

form12.show()能打开窗口,但close()就是关不掉!!!!!!

请问这是为什么
?????????????

[解决办法]
如果你想强行退出,

C# code
this.Close();Process.GetCurrentProcess().Kill();
[解决办法]
你关掉之后,不是还会创建窗体吗,定时器马上就会创建新的,你间隔多少,条件不满足,你得看看为什么不满足,调试
[解决办法]
把timer1.Stop()改为timer1.Enabled = false;试试

读书人网 >C#

热点推荐