Расширенный расчет прогресса - PullRequest
0 голосов
/ 23 октября 2011

Здравствуйте, я разрабатываю систему автоматического обновления, которая имеет индикатор выполнения, который основан на этапах.

detecting connection = 10%
checking file exists = 20%
check for updates = 30%
download update = 40%-70%
install update = 70%-100%

Здесь все усложняется, когда индикатор выполнения достигает стадии обновления загрузки, я хотел бы, чтобы индикатор выполнения также отображал ход загрузки, что будет означать следующее ...

40% = 0% of the download
70% = 100% of the download

и после завершения загрузки ...

70% = 0% of the update installed
100% = 100% of the update installed

но как бы это рассчитать.

Ответы [ 2 ]

0 голосов
/ 23 октября 2011

70 - 40 = 30, поэтому 30% столбца отображает ваш прогресс загрузки

30 / 100 = 0.3, поэтому приращение на 0,3% каждый раз при завершении загрузки 1%.

0 голосов
/ 23 октября 2011

Вам нужно взять прогресс загрузки (в виде доли от 0 до 1), умножить его на 30 и добавить к базовому числу (40 или 70).

Мой открытый исходный код Библиотека прогрессии (C #) может сделать это за вас, создав масштабированный дочерний репортер .

...