c# 创建延时关闭提示窗口
时间: 2024-09-12 12:08:43 浏览: 49
C#实现延时并自动关闭MessageBox的方法
在C#中创建一个具有延时关闭功能的提示窗口,你可以使用`System.Windows.Forms.Timer`来实现计时器,当计时结束时关闭窗口。以下是一个简单的示例代码,展示如何创建一个带有延时关闭功能的提示窗口:
```csharp
using System;
using System.Windows.Forms;
public class DelayedMessageBox : Form
{
private Timer timer;
private int delayInSeconds;
public DelayedMessageBox(string message, int delayInSeconds)
{
this.delayInSeconds = delayInSeconds;
this.Text = "提示";
this.Size = new System.Drawing.Size(400, 200);
this.StartPosition = FormStartPosition.CenterScreen;
Label label = new Label();
label.Text = message;
label.AutoSize = true;
label.Location = new Point(15, 15);
this.Controls.Add(label);
this.timer = new Timer();
this.timer.Interval = delayInSeconds * 1000; // 将秒转换为毫秒
this.timer.Tick += new EventHandler(timer_Tick);
this.timer.Start();
}
private void timer_Tick(object sender, EventArgs e)
{
this.timer.Stop();
this.Close();
}
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
DelayedMessageBox mb = new DelayedMessageBox("这是一个延时关闭的提示窗口", 5); // 延迟5秒关闭
Application.Run(mb);
}
}
```
在这个示例中,`DelayedMessageBox`类继承自`Form`类,创建了一个带有消息的窗口,并设置了计时器。计时器的`Tick`事件在指定的延迟时间到达后触发,停止计时器并关闭窗口。
阅读全文