Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

TprogresssBar с отображением процентов   Найти похожие ветки 

 
kyn66 ©   (2010-04-06 15:54) [0]

Добрый день, мастера. В приложениях где происходит некоторый циклический процесс отображаю его с помощью ProgressBar и метки в процентном соотношении. Вот такой код:


Var
 Nzap,
 NzapV,
 NzapC    : Integer;
begin
DM1.ClientTbl.First;
 PB1.Position := 0;
 PB1.Max := DM1.ClientTbl.RecordCount;
 NzapC := Trunc(DM1.ClientTbl.RecordCount/100);
 Nzap := 0;
 NzapV := 0;
 While not DM1.ClientTbl.EOF do
  begin
    Inc(Nzap);
    if Nzap >= NzapC then
     begin
       Inc(NzapV);
       ProcLab.Caption :=  IntToStr(NzapV) + " %";
       Nzap := 0;
     end;
    Application.ProcessMessages;  
    ...
  end;
...

Код всегда отрабатывал отлично. Но сегодня сталкнулся с ситуацией, когда кол-во записей меньше 100 и предоставляемая процентная информация оказалась неверной. Т.е. ppfgbctq в таблице 80, NzapC равен 0, ну и соответственно проценты показываются только до 80.
  Каким образом модернезировать код, чтобы для всех ситуаций правильно было показание процентов вне зависимости от кол-ва записей. ?


 
Медвежонок Пятачок ©   (2010-04-06 15:59) [1]

боже, какая прелесть


 
12 ©   (2010-04-06 16:08) [2]

ProcLab.Caption :=  IntToStr(round(DM1.ClientTbl.RecNo/DM1.ClientTbl.RecordCount*100)) + " %";


 
kyn66 ©   (2010-04-06 16:33) [3]

2 12
Таблица проиндексирована по ключу(два поля) и поэтому получается блуждающий RecNo.


 
12 ©   (2010-04-06 16:36) [4]

ну примерно же ж..
DM1.ClientTbl.RecNo -  Nzap


 
kyn66 ©   (2010-04-06 16:39) [5]

2 12
Большое спасибо. Я так и сделал. Поставил просто увеличивающийся  Nzap вместо RecNo. (Думал успею отписаться до ответа).


 
Dennis I. Komarov ©   (2010-04-06 16:40) [6]


> Медвежонок Пятачок ©   (06.04.10 15:59) [1]

То ли сейчас еще будет...


 
Andy BitOff ©   (2010-04-06 19:29) [7]

И эти люди занимаются программирование. Куда катится мир. =(



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.071 c
15-1275143388
oldman
2010-05-29 18:29
2010.08.27
Для тех, кто любит блюз (а тут любят блюз...)


6-1217592758
user
2008-08-01 16:12
2010.08.27
Как перебрать все файлы с FTP ?


15-1268404840
Илья_
2010-03-12 17:40
2010.08.27
Ошибка при отладке программы с помощью функции Trace into


15-1269977724
Anatoly Podgoretsky
2010-03-30 23:35
2010.08.27
Список пойманых фирм.


15-1270632270
Валерий М.
2010-04-07 13:24
2010.08.27
MySQl Server 4