Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.045 c
2-1268591153
NBAH1990
2010-03-14 21:25
2010.08.27
Программное выделение области мышью


4-1236197897
d@vinchi
2009-03-04 23:18
2010.08.27
Как получить зарегистрированные в системе TAPI-линии


15-1264762579
И Павел
2010-01-29 13:56
2010.08.27
Стоит ли превращать сайт в файлообменник?


2-1266177784
Дмитрий
2010-02-14 23:03
2010.08.27
алиасы в FB_embedded 2.1


15-1266678959
GDI+
2010-02-20 18:15
2010.08.27
Интересно, когда андроиду можно будет просто сказать.




   Наверх