c#让子窗体显示一段时间自动关闭
privatevoidMainForm_Shown(objectsender,EventArgse){ImageFormimageForm=newImageForm();...
private void MainForm_Shown(object sender, EventArgs e)
{
ImageForm imageForm = new ImageForm();
imageForm.Show();
Thread.Sleep(1000);
imageForm.Close();
}
但是没有用,有Thread.Sleep(1000);甚至都看不到我的子窗体有显示出来过。 展开
{
ImageForm imageForm = new ImageForm();
imageForm.Show();
Thread.Sleep(1000);
imageForm.Close();
}
但是没有用,有Thread.Sleep(1000);甚至都看不到我的子窗体有显示出来过。 展开
展开全部
可以用委托
给你一个桥拿我的闷轿例子
//定义委托
public delegate void CloseAlertFrm();
public void CloseAlert()
{
if (this.InvokeRequired)
{
CloseAlertFrm ca = new CloseAlertFrm(CloseAlert);
this.Invoke(ca);
}
else
{
this.Close();
this.Dispose();
}
}
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
Thread.Sleep(2000);
CloseAlert();
}
我用到了backgroudWorker, 在这个窗体加载的时蚂消肆候让这个BackGroudWorker开始工作,然后用Thread.sleep(时间秒数)计时,到时间自动执行委托。
希望能帮到你
给你一个桥拿我的闷轿例子
//定义委托
public delegate void CloseAlertFrm();
public void CloseAlert()
{
if (this.InvokeRequired)
{
CloseAlertFrm ca = new CloseAlertFrm(CloseAlert);
this.Invoke(ca);
}
else
{
this.Close();
this.Dispose();
}
}
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
Thread.Sleep(2000);
CloseAlert();
}
我用到了backgroudWorker, 在这个窗体加载的时蚂消肆候让这个BackGroudWorker开始工作,然后用Thread.sleep(时间秒数)计时,到时间自动执行委托。
希望能帮到你
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
弄个Timer控件试试
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不要用Sleep.用定时器Timer
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以在那个子窗体上放个时间控件,在时间控件中来实现自动关闭
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询