miten saan progressbarin "tanssimaan pillini mukaan" kun kopioin tiedostoja, kuten esim että yksi progressbarin 100% on yksi tiedosto??
kiitos sille joka auttaa.. :)
>>Harrastelija>>
Jos kopioit vaikka kymmenen tiedostoa, niin laita progresbarin maximum propertyksi 10. Sitten aina kun olet kopioinut yhden tiedoston lisää progresbarin value propertyä yhdellä. Eli sinun tulee aina tietää se, että montako tiedostoa haluat kopioida että saat progresbarin näyttämään oikeata.
Näin:
progresbar.maximum = 10 for i = 1 to 10 'kopioi tiedosto i progresbar.value = progresbar.value + 1 next i
Empä kokeillu tuota, vaan noin sen pitäis mennä.
kyllä joo ;) noin toteutan sen jollei "vastaavampaa" mutta en kopioi kuin yhden tiedoston. miten saisi sen niin, että koko progressbarin valueointi olisi tiedosto?
Havainnoillistus:
100 mt ohjelma kokonaisenaan
10 mt = progresbar.value + 1
jne..?
>>Harrastelija>>
Progressbarin arvoksi (olettaen, että se toimii välillä 0-100) tulee paljonko_kopioitu / tiedoston_koko * 100, eli ihan normaalia prosenttilaskua.
Edit: Hehheh, hidas ja hölmö :) Blazen ratkaisu melkoisesti parempi =)
---
ah.. :)
Noinpa tuo on sitten vähän hankalampi.
Ekana tulee tämmöset mieleen:
1.
Jaa tiedosto osiin, esim tuo kymmenen osaa. Kopioi osa 1 ja kasvata baria, kopio osa 2 ja kasvata jne..
2.
Mieti jokin aika johon tiedosto kopioituu, sitten jaa se aika vaikka tuohon kymmeneen osaan ja kasvata baria aina kun yksi osa on mennyt :)
Aikamoista purkkaa =) Kyllä tuohon löytyy jokin parempikin tapa varmasti, en vain äkkiseltään keksi että mikä. Tuo kohta 1 on varmasti järkevämpi, mutta hankalampi totetuttaa tietty.
Hyvä kiitos, vielä se että mistä saan nähdä nuo paljon_kopioitu ja tiedoston_koko hommat..?
>>Harrastelija>>
FileLen-funktiolla
Heitin tuon FileLen-funktion kokeilematta. Sen verran aihe kiinnosti että hieman testailin. FileLen-funktiota ei voi käyttää ainakaan FileCopyn yhteydessä, koska kopioinnin aikana ei tapahdu muuta eikä myöskään ProgressBaria voi päivittää. Sen sijaan binääritiedostojen Get ja Put käskyjen kanssa saa tiedoston pituuden LOF(1)-funktiolla ja ajastimen kanssa voi sitten päivittää ProgressBarin. Tällöin voi kyllä päivittää ProgressBarin helpommin suoraan kopiointiohjelmalla ilman ajastinta.
Aihe on jo aika vanha, joten et voi enää vastata siihen.