ProgressBars and Application.DoEvents : Applications « GUI Applications « VB.Net Tutorial






ProgressBars and Application.DoEvents
Option Strict On
imports System
imports System.Drawing
imports System.Windows.Forms

public class ProgressBars : inherits Form

  dim pb as ProgressBar
  dim lbl as Label

  public sub New()
    Size = new Size(300,200)

    dim btn as new Button()
    btn.Parent = me
    btn.Text = "&Start"
    btn.Location = new Point(0,0)
    AddHandler btn.Click, AddressOf btn_OnClick

    lbl = new Label()
    lbl.Parent = me
    lbl.Size = new Size(100,23)
    lbl.Location = new Point(0,25)
    lbl.BorderStyle = BorderStyle.FixedSingle
    lbl.TextAlign = ContentAlignment.MiddleCenter
    lbl.Text = ""

    pb = new ProgressBar()
    pb.Parent = me
    pb.Location = new Point(0, 70)
    pb.Size = new Size(400, 20) 
    pb.Minimum = 0      '  the default value
    pb.Maximum = 100    '  the default value
  end sub  '  close for constructor

  private sub btn_OnClick(ByVal sender as object,ByVal e as EventArgs)
    dim cntr as integer = 0
    pb.Value = 0
    pb.Step = 1
    for i as integer = 0 to 100000
      cntr  = cntr + 1
      if cntr mod 100 = 0 then
        lbl.Text = cntr.ToString()
        pb.PerformStep()
        Application.DoEvents()
        System.Threading.Thread.Sleep(40)
      end if
    next
  end sub

  public shared sub Main() 
    Application.Run(new ProgressBars())
  end sub

end class








15.1.Applications
15.1.1.ProgressBars and Application.DoEventsProgressBars and Application.DoEvents
15.1.2.Applications.DoEventsApplications.DoEvents