Сделайте таймер обратного отсчета в C#

Когда программа запускается, она устанавливает имя и время события. Затем он включает управление Timer.

// Инициализировать информацию о событии.
private const string EventName = "End of the World";
private DateTime EventDate = DateTime.Now +
    new TimeSpan(1, 13, 42, 59);
private void Form1_Load(object sender, EventArgs e)
{
    lblEvent.Text = EventName;
    this.Text = EventName + " at " + EventDate.ToString();
    this.ClientSize = new Size(
        lblEvent.Bounds.Right,
        lblEvent.Bounds.Bottom);
    tmrCheckTime.Enabled = true;
}

В следующем коде показан обработчик событий Timer Tick.

// Обновление обратного отсчета.
private void tmrCheckTime_Tick(object sender, EventArgs e)
{
    TimeSpan remaining = EventDate - DateTime.Now;
    if (remaining.TotalSeconds < 1)
    {
        tmrCheckTime.Enabled = false;
        this.WindowState = FormWindowState.Maximized;
        this.TopMost = true;

        foreach (Control ctl in this.Controls)
        {
            if (ctl == lblEvent)
            {
                ctl.Location = new Point(
                    (this.ClientSize.Width - ctl.Width) / 2,
                    (this.ClientSize.Height - ctl.Height) / 2);
            }
            else
            {
                ctl.Visible = false;
            }
        }

        using (SoundPlayer player = new SoundPlayer(
            Properties.Resources.tada))
        {
            player.Play();
        }
    }
    else 
    {
        lblDays.Text = remaining.Days + " days";
        lblHours.Text = remaining.Hours + " hours";
        lblMinutes.Text = remaining.Minutes + " minutes";
        lblSeconds.Text = remaining.Seconds + " seconds";
    }
}

Когда срабатывает событие Tick, программа вычисляет время, оставшееся до события. Если время события пришло, программа отключает Timer, максимизирует форму и делает форму самой верхней. Он скрывает все элементы управления, кроме тех, которые отображают имя события, которое оно центрирует. Наконец, он использует объект SoundPlayer для воспроизведения звукового ресурса с именем tada.

Источник: http://csharphelper.com/blog/2015/05/make-a-countdown-timer-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector