如何在循环体中增加进度条(100分)

  • 主题发起人 主题发起人 zylnet
  • 开始时间 开始时间
Z

zylnet

Unregistered / Unconfirmed
GUEST, unregistred user!
ado_test.Close;
ado_test.SQL.Clear;
ado_test.SQL.Add('select * from test1');
ado_test.Open;
ado_test.First;
while not ado_test.Eof do
begin
//增加提示窗体,显示进度条?????????
// if not Assigned(Formts) then
// Application.CreateForm(TFormts, Formts);
// Formts.Show ;
//????以上调用进度条如何调用,formts中有一个processbar
//先取ID和价格
m_id:=ado_test.fieldbyname('id').AsString;
m_jg:= ado_test.fieldbyname('jg').AsFloat;
//索引取第一条
ado_tt.Close;
ado_tt.SQL.Clear;
ado_tt.SQL.Add('select jb,mc from test where id='+m_id+' and jg='+floattostr(m_jg)+' ORDER BY jb desc');
ado_tt.Open;
//取第一条的名称和级别
m_jb:=ado_tt.Fieldbyname('jb').AsFloat;
m_mc:=ado_tt.Fieldbyname('mc').AsString;
//替换原表里更新级别与名称
ado_test1.Close;
ado_test1.SQL.Clear;
ADO_test1.SQL.Add('UPDATE test1 SET mc='''+m_mc+''',jb='''+floattostr(m_jb)+''' WHERE id='''+m_id+'''' );

ado_test1.ExecSQL;

//下一条进行循环
ado_test.Next;
end;
showmessage('调整完毕');
end;
 
ado_test.Close;
ado_test.SQL.Clear;
ado_test.SQL.Add('select * from test1');
ado_test.Open;
ado_test.First;
if not Assigned(Formts) then
Application.CreateForm(TFormts, Formts);
Formts.PbProcess.Max := ado_test.RecordCount; //设置最大值
Formts.Show ;
while not ado_test.Eof do
begin
//增加提示窗体,显示进度条?????????
Formts.BringToFront ;
Formts.Update ;
//????以上调用进度条如何调用,formts中有一个processbar
//先取ID和价格
m_id:=ado_test.fieldbyname('id').AsString;
m_jg:= ado_test.fieldbyname('jg').AsFloat;
//索引取第一条
ado_tt.Close;
ado_tt.SQL.Clear;
ado_tt.SQL.Add('select jb,mc from test where id='+m_id+' and jg='+floattostr(m_jg)+' ORDER BY jb desc');
ado_tt.Open;
//取第一条的名称和级别
m_jb:=ado_tt.Fieldbyname('jb').AsFloat;
m_mc:=ado_tt.Fieldbyname('mc').AsString;
//替换原表里更新级别与名称
ado_test1.Close;
ado_test1.SQL.Clear;
ADO_test1.SQL.Add('UPDATE test1 SET mc='''+m_mc+''',jb='''+floattostr(m_jb)+''' WHERE id='''+m_id+'''' );

ado_test1.ExecSQL;

//下一条进行循环
Formts.PbProcess.StepIt ;
Formts.Repaint ; //更新进度条的显示.
ado_test.Next;
end;
showmessage('调整完毕');
end;
 
经典算法:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2362827
 
非常感谢2楼的帮助
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
764
import
I
后退
顶部