2

現時点では、ファイルをダウンロードするためのすべてのリンクを配置し、それらを 1 つずつダウンロードするキュー システムがあります。

私がやろうとしているのは、1 つではなく 2 つのプログレス バーを持つことです。上部の進行状況バーは現在のファイルの進行状況を示し、下の進行状況バーはすべてのファイルのダウンロードが完了する前の全体的な進行状況を示します。

私はこれを行う方法を考え出そうとしましたが、どうやってそれを行うのかわかりません。

私が試したのはこれです:

If Me.fileUrls.Count = 1 Then
    CProgressBarTotal.Value = Help.ProgPercent.Text
Else
    CProgressBarTotal.Value = Help.ProgPercent.Text / Me.fileUrls.Count
End If

そして、これはうまくいかないことに後で気づきました。他の方法も考えてみましたが、思いつきませんでした。

どうすればこれを行うことができるか知っている人はいますか? ありがとう。

4

2 に答える 2

0

if ステートメントは必要ありません。

CProgressBarTotal.Value = (currentFileNumber / Me.fileUrls.Count + Help.ProgPercent.Text / 100 / Me.fileUrls.Count) * CProgressBarTotal.Maximum
于 2013-09-09T19:11:57.183 に答える
0

ダウンロードされた合計バイト数を追跡​​する 2 番目の進行状況バーを表示するには:

  1. ダウンロード画面を表示する前に、ダウンロードする合計バイト数を決定します。ここでの詳細はダウンロード メカニズムによって異なりますが、ほとんどの FTP および HTTP サーバーはファイル サイズを提供します。そうでない場合は、合理的な見積もりを行う必要があります。これをアクセス可能なメンバー変数に格納します。

  2. ダウンロードされた合計バイト数用のアクセス可能なメンバー変数を作成します。これを、単一ファイルの進行状況を更新する同じルーチンにバインドして、現在のファイルの割合に加えて、各ダウンロードの「ティック」が「ダウンロードされたバイト数」フィールドも累積するようにします。

  3. 合計バイト数を「合計パーセンテージ」進行状況バーの最大値にバインドします。進行状況バーの位置にバイト ダウンロード カウンターをバインドします。

追加のポイント: ファイルがダウンロード キューに追加 (または削除) された場合、ダウンロード カウントの合計バイト数がリアルタイムで更新され、進行状況バーがそれに応じて進行状況をリセットするように、バインディングを動的に構成します。 .

于 2013-09-09T17:15:41.693 に答える