温馨提示×

winform窗体倒计时器怎么实现

小亿
151
2024-05-27 17:44:12
栏目: 智能运维

在WinForm窗体中实现倒计时器可以通过使用System.Threading.Timer类来实现。以下是一个简单的示例代码:

using System;
using System.Windows.Forms;
using System.Threading;

public partial class Form1 : Form
{
    private int countDown = 10;
    private System.Threading.Timer timer;

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        timer = new System.Threading.Timer(OnTimerCallback, null, 0, 1000);
    }

    private void OnTimerCallback(object state)
    {
        countDown--;
        
        if (countDown <= 0)
        {
            timer.Dispose();
            MessageBox.Show("倒计时结束!");
            return;
        }

        // 更新UI显示倒计时
        this.Invoke((MethodInvoker)delegate
        {
            label1.Text = countDown.ToString();
        });
    }
}

在上面的代码中,首先在窗体加载时创建一个System.Threading.Timer对象,并指定回调方法OnTimerCallback。在回调方法中,每秒更新倒计时并更新UI显示。当倒计时结束时弹出消息框提示倒计时结束。

0