{一個很急的問題}(50分)

  • 主题发起人 主题发起人 hurryman
  • 开始时间 开始时间
H

hurryman

Unregistered / Unconfirmed
GUEST, unregistred user!
{我的系統啟動后,statusbar要出現有我在后台算得的一個
數值,當我前台向后台發送數据后,statusbar上的數值也立刻刷新
我的方法是在前台調用后台的存儲過程,但statusbar上的數值
不能立刻刷新.}
procedure TForm2.count;
var s1,s2,s3,s4,s5,s6,s7,s8:variant;
begin
with dataunit.DataModule1.spcount do
begin
ExecProc ;
s1:=Parameters.ParamByName('@srmbcount').value ;
s2:=parameters.parambyname('@lrmbcount').Value ;
s3:=parameters.parambyname('@psrmbcount').Value ;
s4:=parameters.parambyname('@shkdcount').Value ;
s5:=parameters.parambyname('@lhkdcount').Value ;
s6:=parameters.parambyname('@pshkdcount').Value ;
S7:=parameters.parambyname('@hrmbcount').Value ;
s8:=parameters.parambyname('@hhkdcount').Value ;
end;
statusbar1.Panels[0].Text :='短期R:'+vartostr(s1)+' H:'+vartostr(s4);
statusbar1.Panels[1].text :='長期R:'+vartostr(s2)+' H:'+vartostr(s5);
statusbar1.Panels[2].Text :='超期R:'+vartostr(s3)+' H:'+vartostr(s6);
statusbar1.Panels[3].Text :='和計R:'+vartostr(s7)+' H:'+vartostr(s8);
end;

如何解決?
 
最后,application.processmessages
 
你确信后台的存储过程返回了数据,你最好不要用Variant类型,采用Float数据类型,在最后
加上statusbar1.refresh();
 
thank you very much !
 
在计算密集型的过程中,要及时刷新控件,需在想刷新的地方加上:
application.processmessages
但这会降低效率。
 
老弟,回答了问题,你给点分吧!
 
后退
顶部