Привет.
Вроде ничего сложного но не могу разобратся, почему у меня некорректно отображается полоска прогресс бара в методе run классе наследнике RunBase.
Начальные значения: strTo = 1, strFrom = 4.
Т.е. 4 итерации, все просто. Соответственно и полоска прогресс бара для 1 итерации должна нанимать 25%, для 2 - 50%, 3 - 75%, 4 - 100%.
Но почему так некорректно отображается? Что даже итерацию 4 - не показывает. Приложил скриншеты.
X++:
public void run()
{
...
Counter curRow, countRows, numRows;
...
void progressUpdate(Counter _curr, Counter _num)
{
real percent = decRound((_curr / _num) * 100, 2);
;
progress.incCount();
progress.setText(strfmt("%1 из %2 (%3)", _curr, _num, strFmt("%1%", percent)));
}
;
...
numRows = strTo - strFrom + 1;
progress = new RunbaseProgress();
progress.setCaption("Импорт");
progress.setAnimation(#AviUpdate);
progress.setTotal(numRows);
startLengthyOperation();
...
for (curRow = strFrom; curRow <= strTo; curRow++)
{
countRows++;
progressUpdate(countRows, numRows);
...
}
...
endLengthyOperation();
...
}