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

要如何即時傳回一個值知道目前資料庫load了多少..

尚未結案
franksyon
一般會員


發表:5
回覆:10
積分:3
註冊:2003-05-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-16 16:48:18 IP:61.56.xxx.xxx 未訂閱
請教各位大大... 小弟有一個資料庫...裡面都是圖形,所以資料很大... 當我開啟連接的時候,可能需要10秒左右,才可把資料連線回來.. 因為只是要讀取資料,所以便把Query1->RequestLive設定成false; 可是,在這個10秒的時間中,可有語法,可即時的將資料load的程度回傳 因為小弟想做一個進度棒..來顯示百分比 可以讓本地端的電腦資到目前的load 進度... 前提是要.Query1->RequestLive->false; 我該如何寫呢,要寫在哪呢,Query1 的事件裡面ㄇ..還是?? 會不會是Query1 的 OnCalcFields 事件??
tech_state
版主


發表:44
回覆:638
積分:641
註冊:2003-02-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-17 23:12:35 IP:203.204.xxx.xxx 未訂閱
franksyon, 您好 可以試試把code寫在Query1的AfterScroll。 以下是我測試的code,供您參考。  
   ProgressBar1->Max = Query1->RecordCount;
   for(int i = 1; i <= Query1->RecordCount; i  )
      ProgressBar1->Position = i;
 
================================= 涵養怒中氣。謹防順口言。留心忙裡錯。珍惜有時錢。 是非終日有,不聽自然無 天下本無事,庸人自擾之
franksyon
一般會員


發表:5
回覆:10
積分:3
註冊:2003-05-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-18 04:54:18 IP:61.56.xxx.xxx 未訂閱
謝謝tech_state大大的方法 弟有試過了,可是.... 他並不會即時回傳.... 他是等資料讀完之後才回傳的 也就是說,讀完之後,才執行 ProgressBar1->Max = Query1->RecordCount; for(int i = 1; i <= Query1->RecordCount; i ) ProgressBar1->Position = i; 如過資料庫大的話,一樣式靜止不動的,有點向障眼法...^^b 我先宣告一個全域 int u; 然後在SQL的每個事件都加上一個u ; 結果u的值最多只是1; 也就是說這些事件,在讀取資料的這段時間,最多只動一下...阿咧..真糟糕.. 不知還有沒有其他的方法...^^"
系統時間:2024-05-07 11:49:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!