Progressbar

5Rad

Mitglied
Hi,
ich bin neu in VB6 und hab im moment folgendes Problem

Ausgangssituation:

Ich hab ein Frame das nach einigen Sekunden geschlossen wird.(Timer) Nun möchte ich auf diesem Frame eine Progressbar mit einbauen, damit man sieht wie lang es noch dauert bis zum Programmstart....

Ich weiß aber nicht wie ich meine Progressbar mit dem Timer verknüpfen kann.

Kann mir bitte jemand bei meinem Problem helfen?

Vielen Danke im voraus für eure bemühungen :)

grüße
Pietro
 
Hallo,

Code:
Private Sub Form_Load()
   Timer1.Interval = 1000
   ProgressBar1.max = 30
   ProgressBar1.Value = 0
   Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
   If ProgressBar1.Value = ProgressBar1.max Then
      Unload Me
   Else
      ProgressBar1.Value = ProgressBar1.Value + 1
   End If
End Sub

Mit dieser Funktion tickt die Progressbar pro Sekunde immer einen hoch, nach 30 Sekunden wird die Form beendet. Der Timer-Interval wird in Millisekunden angegeben, wenn Du den Interval also auf einen anderen Wert stellst, läuft er schneller oder langsamer.

Grüsse
Ronald
 
Die Zeile erhöht die Progressbar, ansonsten sieht sie zwar hübsch aus, tut aber nichts. Und da ich die Abfrage, ob die Zeit erreicht ist, im Beispiel an die Progressbar gehängt habe, würde auch die Form nie geschlossen werden.

Deshalb ist in diesem Beispiel die Else-Schleife natürlich unabdingbar.

Natürlich könnte man das ganze auch komplett ohne Progressbar erledigen, aber so wie ich Dich verstanden habe, war ja gerade die Frage nach der Progressbar die Du dem Anwender zeigen willst, der Kernpunkt Deiner Frage.

Ronald
 
Nee genau so wollt ich es haben mit der Progressbar
aber ich mein das Timer Steuerelement erhöht doe Progressbar autmatisch (kann auch sein ich ihr mich!?)

ich hab es jetzt mal ohne die else anweisung versucht und es läuft trotzdem

Code:
Option Explicit

Private Sub Form_Load()
    lblVersion.Caption = "Version " & App.Major & "." & App.Minor & "." & App.Revision
    lblProductName.Caption = App.Title
    lblCopyright2 = App.LegalCopyright
    lblcompany2 = App.CompanyName
    ProgressBar1.Min = 0
    ProgressBar1.Max = 200
    'Timer1.Interval = 30
    ProgressBar1.Value = 0
    frmLogin.Show
End Sub


Private Sub Timer1_Timer()
    ProgressBar1.Value = ProgressBar1.Value + 1
        If ProgressBar1.Value = ProgressBar1.Max Then
            Unload Me
        End If
End Sub

ich mein es liegt am Timer
aber wie gesagt kenn mich net so aus

Was meinst du dazu?

grüße
Pietro
 
Logo, so rum geht es natürlich auch. Du setzt den Wert der Progressbar im Timer immer gleich hoch, sobald das Timer-Ereignis aufgerufen wird.
 
*klein mach*
Code:
ProgressBar1.Value = ProgressBar1.Value + 1

Mist den Code Schnippsel hab ich übersehen!
Klar dann bleibt es sich gleich ...

Sorry

Ich danke dir :)

Hab noch ne frage zwegs Datenbank zugriff in Vb6 kennst du dich damit auch aus?

grüße
Pietro
 
Für Datenbankzugriffe solltest Du Dich am besten unter folgendem Link mal informieren:

http://www.activevb.de/tipps/vb6tipps/tipp0437.html

Grundsätzlich stellt sich die Frage, welche Datenbank Du nutzen willst, und dazu gibt es unterschiedlichste Zugriffsmöglichkeiten.

Ich arbeite nahezu ausschließlich mit SQL-Befehlen, aber dies führt sicherlich zu weit, dies hier zu erklären.

Viele Grüsse
Ronald


Denk bitte daran, erledigte Tasks hier als erledigt zu kennzeichnen, und bei Zufriedenheit eine Bewertung zu geben.
 

Neue Beiträge

Zurück