線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1199
推到 Plurk!
推到 Facebook!

請問如何寫Callback?

尚未結案
brianwung
一般會員


發表:18
回覆:22
積分:8
註冊:2002-06-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-09 18:29:27 IP:61.30.xxx.xxx 未訂閱
請問如何寫callback? 可舉簡單的範例嗎? 謝謝
solnone
中階會員


發表:2
回覆:97
積分:69
註冊:2003-05-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-13 01:53:44 IP:203.66.xxx.xxx 未訂閱
CopyFileEx 可以copy file 要傳入一個callback function, 可回應copy的進度 參考看看 function CopyProgressRoutine( TotalFileSize: LARGE_INTEGER; TotalBytesTransferred: LARGE_INTEGER; StreamSize: LARGE_INTEGER; StreamBytesTransferred: LARGE_INTEGER; dwStreamNumber: DWORD; dwCallbackReason: DWORD; hSourceFile: THandle; hDestinationFile: THandle; lpData: Pointer ): DWORD; stdcall; begin form1.ProgressBar1.Position := Floor((TotalBytesTransferred.QuadPart / TotalFileSize.QuadPart) * 100); Result := PROGRESS_CONTINUE; Application.ProcessMessages; end; procedure TForm1.Button1Click(Sender: TObject); begin CopyFileEx('a.txt', 'b.txt', @CopyProgressRoutine ,nil ,nil , COPY_FILE_RESTARTABLE); end; 另一個sample… type TtestProc = procedure; procedure a; begin ShowMessage('Hello!'); end; procedure b(callBack: TtestProc); begin if Assigned(callback) then callBack; end; procedure TForm1.Button1Click(Sender: TObject); begin b(a); end;
brianwung
一般會員


發表:18
回覆:22
積分:8
註冊:2002-06-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-17 17:16:06 IP:61.30.xxx.xxx 未訂閱
非常感謝
系統時間:2024-04-29 17:45:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!