| |
VB.NET - Ein- und UmsteigerProblem / Progressbar Balken erlischt nicht | | | Autor: Dirk01 | Datum: 15.10.13 10:43 |
| Hallo zusammen!
Ich habe mir in einem kleinen Tool zum auflisten von Dateien aus einen Verzeichnis
eine Progressbar für die Fortschrittsanzeige eingebaut.
So weit so gut.
Wenn der grüne Balken nun aber bis zum Ende durchgelaufen ist, bleibt er so stehen.
Der grüne Balken erlischt nicht.
Mit Progressbar1.Update und .Refresh auch nicht.
Was habe ich hier falsch gemacht?
Wäre super, wenn mir da kurzfristig jemand weiterhelfen könnte.
Private Sub P4_CMB_Durchlauf_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles _
P4_CMB_Durchlauf.Click
'Testdurchlauf
ProgressVonBis(100)
End Sub
'...
Public Sub ProgressVonBis(ByVal bis As Integer)
Try
ProgressBar1.Minimum = 0
ProgressBar1.Maximum = bis
Dim x As Integer
For x = 1 To bis
ProgressBar1.Value = x
Next x
'ProgressBar1.Refresh()
'ProgressBar1.Update()
Catch ex As System.Exception
MsgBox("Problem:" & vbCrLf & ex.Message)
End Try
End Sub Vielen Dank im Voraus.
mfg.
Dirk | |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: stefan220273 | Datum: 15.10.13 10:54 |
| Progressbar.Value = 0
Gruss Stefan
Egal wie oft etwas gelöscht wird, das Internet vergisst nie und Menschen lassen sich nicht dauerhaft täuschen!
| |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: Dirk01 | Datum: 15.10.13 20:25 |
| Hallo Stefan!
Wenn ich nun Progressbar1.value = 0 einfüge funktioniert passiert gar nichts?
mfg.
Dirk | |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: Manfred X | Datum: 15.10.13 21:11 |
| Hallo!
Du hast keine zeitliche Verzögerung in Deiner
Schleife. Ehe irgendwas gezeichnet werden kann,
ist Deine Schleife schon voll durchgelaufen.
Verwende einen Timer mit einer Verzögerung von
200 ms (Interval-Eigenschaft) und es dauert 20 Sekunden,
bis die Progressbar hochgelaufen ist.
| |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: Dirk01 | Datum: 16.10.13 08:54 |
| Hallo zusammen!
Vielen Dank für die Infos.
Ich hab es nun so hinbekommen.
Public Sub ProgressVonBis(ByVal bis As Integer)
Try
ProgressBar1.Minimum = 0
ProgressBar1.Maximum = bis
ProgressBar1.Step = 1
Dim x As Integer
For x = 0 To bis
ProgressBar1.PerformStep()
ProgressBar1.Refresh()
System.Threading.Thread.Sleep(10)
Next
System.Threading.Thread.Sleep(500)
ProgressBar1.Value = 0
Catch ex As System.Exception
MsgBox("Problem:" & vbCrLf & ex.Message)
End Try
End Sub Wenn sich dass verbessern läßt, wäre ich für jede Anregung dankbar.
Schönen Tag noch.
mfg.
Dirk | |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: Manfred X | Datum: 16.10.13 09:28 |
| Prozesse sollte man nur in speziellen Ausnahmefällen
schlafen legen !
Public Class frmTest
'Progressbar1 und Timer1 von der Toolbox auf die Form ziehen
Dim timervalue As Integer 'Fortschritt wird im Timer-Event erzeugt
Private Sub frmTest_Load(sender As System.Object, _
e As System.EventArgs) Handles MyBase.Load
'Initialisierungen
Timer1.Interval = 1000 'eine Sekunde
Timer1.Enabled = True
timervalue = ProgressBar1.Minimum
End Sub
Private Sub Timer1_Tick(sender As System.Object, _
e As System.EventArgs) Handles Timer1.Tick
timervalue += 5 'Fortschritt
With ProgressBar1
If timervalue <= .Maximum Then
'Fortschritt notieren
.Value = timervalue
ElseIf timervalue > 1.1 * ProgressBar1.Maximum Then
'nach einer Wartefrist den Fortschritt neu starten
.Value = .Minimum
timervalue = 0
End If
End With
End Sub
End Class | |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: Franki | Datum: 17.10.13 07:08 |
| Hallo Dirk,
verbessern lässt sich das insofern, dass du einen Bezug zur eigentlichen Aufgbe herstellst deren Fortschritt angezeigt werden soll.
Nehmen wir an, du möchtest 100 Dateien kopieren, dann könntest du nach jedem Kopiervorgang den Value um 1 erhöhen. Oder du gehst nach Dateigröße, rechnest entsprechend um usw., usw.
Was jetzt hier mit dem Timer diskutiert wird funktioniert zwar, aber der User hat keinerlei Info anhand der Progressbar inwieweit die eigentliche Aufgabe fortgeschritten ist. Dafür ist eine Progressbar eigentlich nicht gedacht.
Gruß
Frank
| |
Re: Problem / Progressbar Balken erlischt nicht | | | Autor: Dirk01 | Datum: 18.10.13 10:04 |
| Allen vielen Dank!
Das mit der Progressbar werd ich mir noch mal überlegen.
mfg.
Dirk | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats Neu! sevEingabe 3.0
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|