Button, Label - Programmbeispiel Countdown

Mit diesem Programmbeispiel wollen wir Schleifen wiederholen. Es soll ein Countdown von 10 bis 0 ausgegeben werden.

Mit drei Buttons sollen wir die Art der Schleife (for-Schleife, kopfgesteuerte- und fußgesteuerte Schleife) wählen können.

 

Wir bauen unser Formular mit vier Buttons und einem Label auf:

 

this.label1.Text = Convert.ToString(i);    //gibt den Text i als String auf label1 aus

System.Threading.Thread.Sleep(1000);       //damit wird der aktuelle Thread für 1000ms (1 Sekunde) angehalten

this.Refresh();                            //erneuert die Anzeige

 

 

Hier der vollständige Programmcode:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace countdown
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            for (int i = 10; i >= 0; i--)
            {
                this.label1.Text = Convert.ToString(i);
                System.Threading.Thread.Sleep(1000);
                this.Refresh();
            }
        }
        private void button2_Click(object sender, EventArgs e)
        {
            int i = 10;

            while (i >= 0)
            {
                this.label1.Text = Convert.ToString(i);
                System.Threading.Thread.Sleep(1000);
                this.Refresh();

                i--;

            }
        }
        private void button3_Click(object sender, EventArgs e)
        {
            int i=10;

            do
            {
                this.label1.Text = Convert.ToString(i);
                System.Threading.Thread.Sleep(1000);
                this.Refresh();

                i--;

            } while (i >= 0);
        }
        private void button4_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}