private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
if(MessageBox.Show("Do you want to close your window?", "My Application",
MessageBoxButtons.YesNo) == DialogResult.Yes)
{
e.Cancel = false;
}
}用以上代码,×掉窗口之后什么反应都没有啊?应该怎么样呢?
{
if(MessageBox.Show("Do you want to close your window?", "My Application",
MessageBoxButtons.YesNo) == DialogResult.Yes)
{
e.Cancel = false;
}
}用以上代码,×掉窗口之后什么反应都没有啊?应该怎么样呢?
解决方案 »
- 窗体的问题
- 这个语句到底是什么意思.
- 安装完Visual studio 2005后,无法再安装Visual Studio 2003,请求帮助!
- 如何修改xml节点属性··请教!谢谢·
- 请问各位大哥如何能够获得WINDOWS系统中帐户的建立时间
- 请问如何才能将输入的汉字按照汉语拼音查询???
- 过多的流程,怎么编写程序?
- 为什么用C#编写richtextbox字体样式和字体大小随下拉框中comboBox的值变化不起作用
- C#乘反序列化json字符
- ServerXMLHTTP.onreadystatechange 如何用C#设置
- 数据提交到后台数据库之前,在哪里怎样判断某个字段是否为空?(救命啊,英雄)
- 如何在不同窗体实现对同一DataRow进行绑定
see:
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfSystemThreadingThreadClassAbortTopic.htm
还要干吗?
这样你就可以掉你的线程啦。
{
for(int i=0;i<ThreadIdx;i++)
{
if(thr[ThreadIdx].IsAlive)
thr[ThreadIdx].Abort();
}
}
我用以上代码,×掉窗口后,线程仍然在运行,而且设了断点都没有进入这个事件???
private void button1_Click(object sender, System.EventArgs e)
{
//结束所有线程
for(int i=0;i<ThreadIdx;i++)
{
if(thr[i].IsAlive)
thr[i].Abort();
}
}
×掉窗口后,线程仍然在运行,而且设了断点发现都没有进入这个事件
closed事件是在窗口关闭之后进行的.看你的操作是要在什么时候运行.
for(int i=0;i<ThreadIdx;i++)
{
if(thr[i].IsAlive)
thr[i].Abort();
}
这段代码如果放在private void button1_Click(object sender, System.EventArgs e)
里面,单击button1,就可以实现关闭我之前打开的线程。
但是如果放在private void Form1_Closing(object sender, System.EventArgs e)里面,
×掉窗口后,线程仍然在运行,而且设了断点发现都没有进入这个事件。
而且就算我没有开任何线程,×掉窗口后也没有到这个事件处理代码里面的断点。
for(int i=0;i<ThreadIdx;i++)
{
if(thr[i].IsAlive)
thr[i].Abort();
}
base.OnClosing(ce);
}
这样你试试。
再.Net的设计中当你按下close按钮或按alt+f4的话,Form1_Closing是不会被调用的。
所以这时你就要重载OnClosing这个事件。