如何實現同多線程.
我在delphi調用Oracle 的Procedure,因為執行時間太長,界面"死掉"
我想用多線程方法解決,MyThread:=TMyThread.Create()
可具體不知怎樣寫.那個高手能幫我補充把過程加到多線程的代碼. 謝謝幫忙!
如果有進程條更好. procedure TAuditOvertimeForm.oxButton1Click(Sender: TObject);
var 
   vYear    :Integer;
   vMonth   :Integer;
   vStartTime:Integer;
   vEndTime :Integer;
begin
           with OraStoredProc1 do
            begin
               Params[0].AsInteger:=vYear;
               Params[1].AsInteger:=vMonth;
               Params[2].AsInteger:=StrToInt(cxTextEdit1.Text);
               Params[3].AsInteger:=vStartTime;
               Params[4].AsInteger:=vEndTime;
               Prepare ;
               ExecProc;
            end;
end;

解决方案 »

  1.   

    type
       mythread=class(Tthread)
       FProcess: TProgressBar;
       private
         procedure update;
       public
         procedure execute;override;
         constructor Create(Suspended:Boolean;Bar:TProgressBar);
    end;implements
     
    procedure mythread.execute;
    begin
       syschronize(update);
    end;constructor mythread.Create(Suspended:Boolean;Bar:TProgressBar);
    begin
       FreeONTerminat := True;
       inherited Create(Suspended);  
       FProcess := TProgressBar.Create(self);
    end;procedure mythread.update;
    begin
      //在这里写你的更新代码吧.
    end;
      

  2.   

    不好意思,太大意了
    procedure mythread.execute;
    begin
       synchronize(update);
    end;
    改过来