title image


Smiley Threading - ProgressBar?!
Hallo auch!

Nach klick auf einen Button in meiner Anwendung setze ich einen Update-befehl innerhalb meiner Oracle-DB ab, der diverse Berechnungen anstößt welche unterschiedlich lange dauern können.

Daher möchte ich natürlich gerne für die Berechnungszeit eine Progress-Bar laufen lassen! Bisher zeige ich die ProgressBar für eine feste Zeit an:



Private Sub BtnInsert_MautBerechnen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnInsert_MautBerechnen.Click

Me.UpdateKONFIGURATION()

Dim result As MsgBoxResult

result = MsgBox("Die zugrunde liegenden Entfernung-/Maut-Tabellen werden jetzt neu berechnet!" & vbCrLf & "Dies kann einen Moment dauern!" & vbCrLf & " " & vbCrLf & "Berechnung durchführen?", MsgBoxStyle.YesNo, "Digital Data - Tarif-Kalkulator")

Me.Cursor = Cursors.WaitCursor

If result = MsgBoxResult.Yes Then

'Progress-Bar starten

Me.ProgressBar1.Visible = True

Dim i As Integer

Me.Cursor = Cursors.WaitCursor

For i = 1 To 100

Threading.Thread.Sleep(1000) '1000 ms warten

ProgressBar1.Value = i

Next

ProgressBar1.Value = 0

Me.Cursor = Cursors.Default

'Insert-Befehl

OracleConnection1.Open()

Me.CmdUpdate_MautBerechnen.ExecuteNonQuery()



OracleConnection1.Close()

Me.ProgressBar1.Visible = False

Me.Cursor = Cursors.Default

MsgBox("Die Entfernungs- und Maut-Tabellen wurden erfolgreich neu berechnet!", MsgBoxStyle.Information, "Digital Data - Haustarif-Kalkulator")

Else

Me.Cursor = Cursors.Default

End If

End Sub



Sollte die Berechnung länger dauern, so ist das umso ärgerlicher, dann "steht" meine Anwendung nämlich!

Dies ist sehr ärgerlich!

1. Frage: wie kann ich dies verhindern?

und 2. habe ich gehört das ich für die parallel laufende Progress-Bar in das umfassende Thema Threading einsteigen muß!

Dies habe ich auch versucht, allerdings erschlägt mich die Masse :rolleyes:

Vielleicht kann mir hier jemand ein paar Code-Schnipsel zur Verfügung stellen oder einen guten Artikel?

Grüsse

und eine närrische KarnevalsZeit!

Marlon

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: