DownloadFile   zodpovězená otázka

VB.NET

Jakou mám použít syntaxy pro událost system.net.webclient.DownloadProgressChanged

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Zaprvé se naučte pravopis a za druhé základy programování...

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Každý někdy začínal, tak hned ne tak zhurta. Tazatek by ale mohl blíže popsat, čeho chce přesně dosáhnout.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tento dotaz pochází pravděpodobně odtud:

http://vbnet.cz/forum-tema--1691-progres...

Přesně tento postup nesnáším. Někdo se na něco zeptá, někdo mu odpoví a tazatel nerozumí absolutně ničemu. Jeho další, už anonymní dotaz zpočívá v požadavku jak udělat to čím mu bylo odpovězeno. Toto je standardní postup kteří zde používají někteří uživatelé.

nahlásit spamnahlásit spam 1 / 3 odpovědětodpovědět

Zvláštní ovšem je, že takovéto dotazy vždy vytočí pouze vás. Nikdo nepochybuje o tom, že vy konkrétní problematice rozumíte (dokonce zřejmě patříte k těm, kteří navíc vládnou pravopisem), ale myslím, že nikdo není zvědavý na to, že vás podobné dotazy obtěžují.

nahlásit spamnahlásit spam 0 / 2 odpovědětodpovědět

A pomůžete mi ? A v cílu má download managera.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

V zásadě asi půjde o to, co chcete v proceduře DownloadProgressChanged dělat. Pokud budete chtít například aktualizovat progress bar, tak toto je pochopitelně možné. Obávám se nicméně, že pokud to neupřesníte, málokdo Vám bude schopen pomoct.

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět

potřebuju progressbar ,který by mě ukazoval průběch stahování

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Příklad jednoduchého stahovacího programu:

Prvky:

- ProgressBar1 - klasický progressbar ukazující postup procesu

- TextBox1 - textbox obsahující URL stahovaného souboru

- Button1 - tlačítko Stáhnout

- Label2 - ukazuje rychlost stahování

- Label4 - ukazuje zbývající čas

- Timer1 - interval 1 sekunda - disabled

Kód (musí být uvnitř nějaké třídy):

    Dim WithEvents webcl As New WebClient()
    Dim minule As Long
    Dim stazeno As Long
    Dim celkem As Long

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Timer1.Start()
            If Not IO.Directory.Exists(Application.StartupPath + "\Staženo") Then IO.Directory.CreateDirectory(Application.StartupPath + "\Staženo")
            webcl.DownloadFileAsync(New Uri(TextBox1.Text), Application.StartupPath + "\Staženo\" + IO.Path.GetFileName(TextBox1.Text))
        Catch ex As Exception : MsgBox("Nelze stáhnout soubor" + ControlChars.NewLine + ex.ToString, MsgBoxStyle.Exclamation, "Chyba")
        End Try
    End Sub

    Private Sub webcl_DownloadFileCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs) Handles webcl.DownloadFileCompleted
        Timer1.Stop()
        ProgressBar1.Value = 0
        Label2.Text = ""
        Label4.Text = ""
        MsgBox("Stahování dokončeno", MsgBoxStyle.Information, "Informace")
    End Sub

    Private Sub webcl_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles webcl.DownloadProgressChanged
        stazeno = e.BytesReceived
        celkem = e.TotalBytesToReceive
        ProgressBar1.Value = e.ProgressPercentage
    End Sub

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim navic As Long = (stazeno / 1024) - (minule / 1024)
        Dim zbyva As Long = (celkem / 1024) - (stazeno / 1024)
        Dim tspan As TimeSpan = TimeSpan.FromSeconds(zbyva / navic)

        Label2.Text = navic.ToString + " kB/s"
        Label4.Text = Math.Floor(tspan.TotalHours).ToString + ":" + Microsoft.VisualBasic.Right("00" + tspan.Minutes.ToString, 2) + ":" + Microsoft.VisualBasic.Right("00" + tspan.Seconds.ToString, 2)
        minule = stazeno
    End Sub
nahlásit spamnahlásit spam 9 / 9 odpovědětodpovědět

Delete

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback