17. oktober 2003 - 15:09Der er
3 kommentarer og 2 løsninger
Progressbar - Hvordan fungerer den?
Overalt ser man det! Hvis man udfører noget i sit program, er der en progressbar der viser hvor meget der er loadet eller hvor vidt processen er.
Hvordan gør man det? Hvis jeg f.eks. kalder en funktion i mit program, som tager længere tid, hvordan får jeg så min progressbar til vise hvor langt processen er kommet?
Det kræver altså, at du VED hvor langt du er nået i en process. Har du med en løkke at gøre, kan du gøre som vist ovenfor. Er du ved at kopiere en fil eller lignende, og vis have kopierings-status vist, bliver du nødt til at vide hvor langt du er nået hele tiden...
Altså: Progress-baren er "dum". Du kan angive en min og en max værdi, og så sætte en value der ligger i mellem min og max for at vise hvor langt du er nået. Altså bare en streg, du bestemmer længden på. Den kan ingenting selv "måle"...
Længere tid, er det 5 sekunder eller 1 minut? Den afbrydelse som opdatering af progress-baren er koster såmænd også lidt tid.
Hvis du f.eks. læser en meget stor tekstfil med 1.000.000 linier, kan du lade progress-baren registrere hver 10.000 linier.
Dim linie as String, a, b as Long
Open dinfil.txt for input as #1 Do while EOF(1) = False Line Input #1, linie a = a +1 If a = 10000 then b = b +1 progressbar.value = b a = 0 End if Loop Close #1
Til inspiration. Vil du have bedre hjælp må du skrive kildeteksten til den proces du vil lave progress-bar for.
Progress-baren er en blå pind - du bestemmer hvor stor en del af pinden der er blå med min, max og value. Det er ikke mere kompliceret end det...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.