Csharp/CSharp Tutorial/GUI Windows Forms/ProgressBar

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

ProgressBar PerformStep

using System;
using System.Drawing;
using System.Windows.Forms;
public class ProgressBars : Form
{
  ProgressBar pb;
  Label lbl;
  public ProgressBars()
  {
    Size = new Size(300,200);
    Button btn = new Button();
    btn.Parent = this;
    btn.Text = "&Start";
    btn.Location = new Point((Size.Width / 2) - (btn.Width / 2), (Size.Height / 4) - btn.Height);
    btn.Click += new EventHandler(btn_OnClick);
    lbl = new Label();
    lbl.Parent = this;
    lbl.Size = new Size(100,23);
    lbl.Location = new Point((Size.Width / 2) - (lbl.Width / 2), btn.Bottom + 25);
    lbl.BorderStyle = BorderStyle.FixedSingle;
    lbl.TextAlign = ContentAlignment.MiddleCenter;
    lbl.Text = "";
    pb = new ProgressBar();
    pb.Parent = this;
    pb.Location = new Point((Size.Width / 8), lbl.Bottom + 25);
    pb.Size = new Size((int)(Size.Width * 3 / 4), 20); 
    pb.Minimum = 0;
    pb.Maximum = 100;
  }
  private void btn_OnClick(object sender, EventArgs e)
  {
    pb.Value = 0;
    pb.Step = 1;
    for (int i = 0; i < 10; i++)
    {
      lbl.Text = i.ToString();
      pb.PerformStep();
      Application.DoEvents();
      System.Threading.Thread.Sleep(20);
    }
  }
  static void Main() 
  {
    Application.Run(new ProgressBars());
  }
}