form上面的物件消失 |
答題得分者是:RaynorPao
|
jonyjo911
一般會員 發表:3 回覆:2 積分:1 註冊:2008-08-27 發送簡訊給我 |
很久沒碰bcb, 最近剛好寫了一隻有關IO ports的小程式
表單內容很簡單, 兩個Label, 兩個button, 一個progress bar 當我在執行程式時, progress bar很聽話的慢慢的在跑進度 不過我的Label和button上面的字和外框卻都不見了 意思是我在form上面只看得到progress bar在跑 想請問一下是哪裡需要增加程式碼 ... 我的基本想法 應該是某個地方可以Redraw或是Invalidate 不過不曉得要怎麼加才好 自己亂加好像也弄不太出來 後來想到Timer讓form去重繪 不過也是一樣的情況 只有progress bar會跑 其它物件都不會顯示 後來又覺得是不是該用thread去做 不過不太確定這樣做是不是最好的方法 另外補充一下 其它物件指的是botton上面的名稱 ,ex Open, Exit Label 想要秀得是ex 1/100, 1/200.....跟著進度表跑就是了 請教各位有經驗人士 謝謝 !! 另外 我現在把program包成執行檔 直接要去執行它 (就是不開BCB) 現在progress bar跑沒兩三下, 整個表單就出現白灰兩層顏色把我的表單內容全蓋掉 就是現在我完全看不到我表單內的物件 不過我可以確定的是 程式沒當掉還有在跑 因為過個兩三分鐘 我的程式跑完後 畫面就會恢復正常 並秀出所有的物件了 是因為系統資源都拿去做program要做的事嗎 導致沒重繪 ? 我很難理解 還請有經驗的幫忙 謝謝
------
idle |
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
(1)先在控制 Progress bar 的迴圈程式碼裡面,加上這一行 Application->ProcessMessages(); http://delphi.ktop.com.tw/board.php?cid=168&fid=914&tid=33279
(2)除了 Progress bar 元件之外,CGauge 元件也滿好用的,例如: [code cpp] for(int i=0; i<100; i ) { CGauge1->Progress=i 1; Sleep(100); Application->ProcessMessages(); } [/code] (3)把你的專案設成 standalone 即可 http://delphi.ktop.com.tw/board.php?cid=168&fid=912&tid=21675
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
jonyjo911
一般會員 發表:3 回覆:2 積分:1 註冊:2008-08-27 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |