![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глючит Porgressbar? [Delphi, Windows]
andreil © (2008-03-04 20:10:00)В программе использую стандартный и TKOLQProgressBar. При работе их обоих одинаково глючит. При небольшом значении MaxProgress (около 160 000 000) все нормально, но вот при больших значениях при изменении прогресса этот самый прогресс скатывается в минуса! при этом переменная, которая в программе отвечает за хранение прогресса, находится в плюсах. Работа с Прогрессбар-ами у меня организованна так:
var progress: integer;
GcfProgress.MaxProgress:=GetItemSize;
.....
progress:=progress+FileSize;
GcfProgress.Progress:=progress;
andreil (2008-03-05 17:00:00) [1]Я понял ;) Щас переделал под процентное отображение - все ОК. Спасибо.
Danger (2008-03-05 11:44:00) [2]
> andreil © (04.03.08 21:43) [2]
> Спасибо, помогло :) буду знать, как делать в следующий раз
> ;)ЗЫ: А на VCL так, как я написал, работало 100% и работает
> до сих пор, а вот на КОЛ - нет :(
Я вообще не вижу смысла оперировать в программе реальными (большими) значениями прогресса, передавая это значение контролу - проще работать с процентной величиной, как посоветовал Compiler. А скатывается в минуса, скорее всего, потому что значение где-то превышает размерность типа данных.
andreil (2008-03-04 21:43:00) [3]Спасибо, помогло :) буду знать, как делать в следующий раз ;)
ЗЫ: А на VCL так, как я написал, работало 100% и работает до сих пор, а вот на КОЛ - нет :(
Compiler (2008-03-04 21:13:00) [4]Попробуй что-нибудь типа этого:
var ItemSize, progress: integer;
ItemSize:=GetItemSize;
GcfProgress.MaxProgress:=100;
.....
progress:=progress+FileSize;
GcfProgress.Progress:=Trunc(progress/ItemSize*100);