Jetzt registrieren!
Passwort vergessen?



 
 
 
--------------- --------------- ---------------


ProgressBar?



wie muss ich eine ProgressBar programieren damit sie sich nach und nach füllt wenn man auf einen Button drückt?
> Artikelbaum anzeigen

Re: ProgressBar?


Hallo,
wie muss ich eine ProgressBar programieren damit sie sich nach
und nach füllt wenn man auf einen Button drückt?
den mußt Du gar nicht programmieren, nur verwenden, der ist doch schon fertig.

Beim Start gibst Du den Maximalwert an, Progressbar1.Max = 100 z.B. wenn die Anzeige in % sein soll. Dann gibst Du mit Progressbar1.Value = Wert den aktuellen Wert an den Progressbar und der zeigt Dir das. Den Wert mußt Du selbst berechnen und immer wieder schreiben.

Gruß, Rainer

Re^2: ProgressBar?


danke

so habe ich das zum ausprobieren geschrieben

Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
ProgressBar1.Value = 1
ProgressBar1.Value = 2
ProgressBar1.Value = 3
ProgressBar1.Value = 4
End Sub


ich möchte das so haben das zwischen dem erscheinen eines Balkens eine Verzögerung von einer Sekunde ist
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Re^3: ProgressBar?


Hallo,
so habe ich das zum ausprobieren geschrieben
Private Sub Button1_Click_1(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button1.Click
ProgressBar1.Value = 1
ProgressBar1.Value = 2
ProgressBar1.Value = 3
ProgressBar1.Value = 4
End Sub


??? VB6 ist das aber nicht. Ist das VBA oder VB2005?

Für VB6 habe ich Dir mal ein Beispiel gschrieben, in dem der Fortschrittsbalken in zwei verschiedenen Varianten verwendet wird.

Auf der Form liegen ein Timer-Steuerelement (Timer1), ein Button (Command1) und ein Progressbar (ProgressBar1).

Wenn das Programm gestartet wird, läuft der Progressbar immer in fünf Schritten von null bis Maximal, jeweils mit einer Sekunde Pause.
Wird auf den Button geklickt, springt der Progressbar auf Null und wird in fünf Schritten bis auf Maximal gefüllt, wieder jeweils mit einer Sekunde Pause.

Hilft Dir das so?

Option Explicit
Private Sub Command1_Click()
Dim i As Byte
Dim tm As Double
Timer1.Enabled = False
For i = 0 To 5
ProgressBar1.Value = i
'Warteschleife
tm = Timer + 1
While tm > Timer
DoEvents
Wend
Next
End Sub
Private Sub Form_Load()
Timer1.Interval = 1000
Timer1.Enabled = True
ProgressBar1.Max = 5
End Sub
Private Sub Timer1_Timer()
If ProgressBar1.Value < ProgressBar1.Max Then
ProgressBar1.Value = ProgressBar1.Value + 1
Else
ProgressBar1.Value = 0
End If
End Sub


Gruß, Rainer

Re^4: ProgressBar?


ich hab vb2005

eigentlich funktioniert der code

nur der teil:

tm = Timer + 1
While tm > Timer
DoEvents()

funktioniert nicht

in den ersten beiden Zeilen ist das Wort Timer unterstrichen und die untere Zeile ist komplet unterstrichen
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Re^5: ProgressBar?


Hallo,
ich hab vb2005
dann sieh mal in die Brettbeschreibung. VB2005 ist ein paar Bretter weiter oben. '.NET und c#'.
eigentlich funktioniert der code

nur der teil:

tm = Timer + 1
While tm > Timer
DoEvents()

funktioniert nicht

in den ersten beiden Zeilen ist das Wort Timer unterstrichen
und die untere Zeile ist komplet unterstrichen
Dann gibt es in VB2005 die Funktion 'Timer' nicht so wie in VB6.
Das DoEvents kannst Du auch weg lassen, aber dann reagiert der Rechner in der Wartezeit auf nichts, Du kannst das Programm noch nicht mal beenden. Die Funktion muß es in VB2005 auch geben, nur weiß ich nicht, wie die heißt.

Heute Abend kann ich nachsehen, im Moment habe ich kein VB2005 zur Verfügung.

Gruß, Rainer

Re^6: ProgressBar?


hi,

Public Class Form1
Dim StartZeit As Date = System.DateTime.Now
Dim i, Ende As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.ProgressBar1.Value = 0
Ende = 10
Me.ProgressBar1.Maximum = Ende
For i = 1 To Ende
System.Threading.Thread.Sleep(1000)
Me.ProgressBar1.Value = Me.ProgressBar1.Value + 1
Next
End Sub
End Class


Cu

Zeitmessung in VB2005


Hallo,
nur der teil:

tm = Timer + 1
While tm > Timer
DoEvents()

funktioniert nicht
sieh Dir das mal an:
http://www.activevb.de/rubriken/vbdot...

Das ist etwas komplizierter als in VB6, macht aber das Selbe.

Gruß, Rainer

Du kannst auf diesen Artikel nicht antworten.

Dieser Artikelbaum ist im Archiv des Experten-Forums von wer-weiss-was zum Thema "Visual Basic" archiviert. Es handelt sich um keine aktuelle Diskussion, daher kann auf die Artikel nicht mehr geantwortet werden.

Seite bei ... merken:
del.icio.us digg it facebook tausendreporter yigg it twitter alltagz google Mister Wong oneview Webnews yahoo linkarena coComment Lieblnk als Bookmark einfügen
Stelle deine Frage: