Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Progress bar
Forum - Visual Basic 6 - Progress bar

Avatar
meno93 (Normal User)
Rookie


Messaggi: 33
Iscritto: 08/01/2008

Segnala al moderatore
Postato alle 21:27
Marted, 08/01/2008
scusate avrei un processo che crea dei file date le dimensioni il nome e l'estensione adesso il mio problema e che vorrei aggiungere una progressbar che appunto in tempo reale faccia capire all'utente il tempo che ancora manca....mi potreste spiegare come fare???grazie a tt:asd::asd:

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 21:31
Marted, 08/01/2008
sai x lo meno come si fa a far avanzare una progressbar?

PM Quote
Avatar
antometal (Member)
Guru


Messaggi: 691
Iscritto: 12/09/2007

Segnala al moderatore
Postato alle 21:32
Marted, 08/01/2008
il controllo progress bar gia presente in vb, devi aggiungere il componente microsoft windows control 6.0 (nn ricordo bene il nome cmq simile)
cos ti appariranno altri controlli tra cui le progress bar
imposti il valore massimo e minimo, poi con la propriet value dai il progresso
es
Codice sorgente - presumibilmente Plain Text

  1. pbar.max=10
  2. pbra.min=0
  3. pbar.value=5


cos la progress bar segner met del progresso

PM Quote
Avatar
meno93 (Normal User)
Rookie


Messaggi: 33
Iscritto: 08/01/2008

Segnala al moderatore
Postato alle 21:32
Marted, 08/01/2008
certo..ma nn voglio creare un illusione ottica ma che calcoli veramente il tempo ed avanzasse progressivamente.....:alert:

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 21:43
Marted, 08/01/2008
allora nn ho capito bene come fatto il tuo progr. cmq puoi fare una cosa del genere.
esempio:
Private Sub Command1_Click()
'*Qui crei ad esmpio blabla.txt
'Poi Qui fai avanzare x es. la progressbar del 50%
'*Qui poi crei n'altro file .txt
'Qui fai avanzare del 100% la progressbar
End Sub
Capito cosa intendo?

Ultima modifica effettuata da GrG il 08/01/2008 alle 21:46
PM Quote
Avatar
antometal (Member)
Guru


Messaggi: 691
Iscritto: 12/09/2007

Segnala al moderatore
Postato alle 21:51
Marted, 08/01/2008
se ho capito bene vuoi avere un astima del tempo rimanente, ma nn un semplice countdown
a questo proposito avevo creto un codice...
Codice sorgente - presumibilmente VB.NET

  1. Private Sub tmrTempo_Timer()
  2. On Error Resume Next                            'c la possibilit che si verifiche l' errore: division by zero
  3. Static Inizio As Long
  4. Dim Trascorso As Long
  5. Dim Stimato As Double
  6. Dim HMS As String
  7.     If Inizio = 0 Then Inizio = Hour(Ora) * 3600 + Minute(Ora) * 60 + Second(Ora)
  8.     If Hour(Time) = 0 And Hour(Ora) > 0 Then Trascorso = 24 * 3600
  9. Trascorso = (Trascorso + Hour(Time) * 3600 + Minute(Time) * 60 + Second(Time)) - Inizio     'tempo trascorso (espresso in secondi) da quando si iniziano a ricevere pacchetti del file
  10.     If Trascorso = 0 Then Trascorso = 1
  11. Stimato = Trascorso * (pbrRicezione.Max / pbrRicezione.Value)             'tempo(teorico ed espresso in secondi) che necessario fino alla fine del trasferimento
  12. lblTempo.Caption = "Alla fine del trasferimento manca: " & Stimato \ 3600 & ":"
  13. Stimato = Hour(Time) * 3600 + Minute(Time) * 60 + Second(Time)
  14. HMS = Stimato \ 3600
  15. Stimato = Stimato / 3600 - Stimato \ 3600
  16. HMS = HMS & ":" & String(-Len(Int(Stimato * 60)) + 2, "0") & Int(Stimato * 60)
  17. Stimato = Stimato * 60 - Int(Stimato * 60)
  18. lblTempo.Caption = "Tempo rimanete stimato: " & HMS & ":" & String(-Len(Int(Stimato * 60)) + 2, "0") & Int(Stimato * 60)
  19. End Sub


un p alla buona e nn so se va
fammi sapere che ti aiuto

PM Quote
Avatar
meno93 (Normal User)
Rookie


Messaggi: 33
Iscritto: 08/01/2008

Segnala al moderatore
Postato alle 22:10
Marted, 08/01/2008
Grazie ma ho risolto con un espressione matematica

Codice sorgente - presumibilmente VB.NET

  1. Private Sub Command1_Click()
  2. Dim dir As String
  3. dir = "c:\" & Text1.Text
  4. Open dir For Output As 1
  5. CommonDialog1.FileName = dir
  6. For kb = 1 To Text2.Text
  7. Write #1, "Y3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3WPfgdgPY3fgdgPY3WPfgdgPY3gdgPY3fgdgfgdgPY3fgdgPY3
  8. ProgressBar1.Value = ProgressBar1.Value + (150 / Text2.Text)
  9. Next
  10. MsgBox "File stato creato con successo nella directory c:\" & Text1.Text, vbInformation, "genera file 1.0"
  11. Close 1
  12. End Sub





dato che lavoro su un ciclo For che impostato da una textbox bastato che impostassi come value (della progressbar) il risultato della divisione fra il numero di cicli for e il massimo valore della progressbar cosi da darmi un valore che se aggiunto rispettivamente ad ogni ciclo visibilmente (progressbar) mi avanzava progressivamente........NN SO SE AVETE CAPITO!!!nn ho saputo tanto spiegalo adesso il codice va perfettamente devo solo per completare sto piccolo programma...dare un interfaccia grafica e coprire gli innumerevoli Bug che ho trovato...:D:D:D:D

PM Quote
Avatar
meno93 (Normal User)
Rookie


Messaggi: 33
Iscritto: 08/01/2008

Segnala al moderatore
Postato alle 22:30
Marted, 08/01/2008
ma avete capito ???rispondete xfavore!!!:d:d:d:d:d

PM Quote
Avatar
kryc (Ex-Member)
Rookie


Messaggi: 36
Iscritto: 11/12/2007

Segnala al moderatore
Postato alle 5:24
Mercoled, 09/01/2008
penso abbiano capito :)

PM Quote