![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ProgressBar [D6, dBase, FoxPro]
rosl © (2003-10-06 09:26:00)
Уважаемые Мастера!!!
я переношу записи из одной таблицы в другую
while not Query1.EOF do
begin
Query1.Next;
form2.Table1.Insert;
form2.Table1.FieldByName("name").AsString:=form1.Query1.FieldByName("name").AsString;
form2.Table1.FieldByName("kod").AsString:=form1.Query1.FieldByName("col010").AsString;
form2.Table1.FieldByName("inn").AsString:=form1.Query1.FieldByName("col005").AsString;
form2.Table1.FieldByName("prihod").AsString:=form1.Query1.FieldByName("col009").AsString;
form2.Table1.FieldByName("procent").AsString:=form1.Query1.FieldByName("col009 _ 100 _ percent").AsString;
form1.Query1.Next;
хотелось бы, чтоб при этом двигался ProgressBar
поместил его на форму, а куда вставить строчку
psition я не знаю.
MsGuns (2003-10-06 13:01:00) [1]
>rosl (06.10.03 09:26)
Убери первый Q.Next и перед концом тела (выражение-то какое ;))) цикла добавь T.Post
Кщд (2003-10-06 12:47:00) [2]
GreateMaster
100*Query1.RecNO/Query1.RecordCount; - такое пройдёт с TQuery?
пробовали?
ProgressBar1.Position:=ProgressBar1.Position+1;
=
ProgressBar1.StepIt;
и не забыть ProcessMessages
GreatMaster (2003-10-06 11:29:00) [3]
Update не нужен, PB сам обновляется (если это стандартный PB)
А чтобы плавно ползла (при >100 записях) можно вместо
ProgressBar1.Position:=100*Query1.RecNO/Query1.RecordCount;
сделать так:
перед циклом сделать ProgressBar1.Max:=Query1.RecordCount (если Query1 не профетчино - профетчить)
и в цикле уже
ProgressBar1.Position:=ProgressBar1.Position+1;
Fiend (2003-10-06 09:37:00) [4]
тока неплохо бы еще вставить
ProgressBar1.Update, после прсвоения прогресса
A_N_D (2003-10-06 09:33:00) [5]
while not Query1.EOF do
begin
Query1.Next;
form2.Table1.Insert;
form2.Table1.FieldByName("name").AsString:=form1.Query1.FieldByName("name").AsString;
form2.Table1.FieldByName("kod").AsString:=form1.Query1.FieldByName("col010").AsString;
form2.Table1.FieldByName("inn").AsString:=form1.Query1.FieldByName("col005").AsString;
form2.Table1.FieldByName("prihod").AsString:=form1.Query1.FieldByName("col009").AsString;
form2.Table1.FieldByName("procent").AsString:=form1.Query1.FieldByName("col009 _ 100 _ percent").AsString;
ProgressBar1.Position:=100*Query1.RecNO/Query1.RecordCount;
end;