關於 HDC 的問題 ( About Form ) |
尚未結案
|
CuteBabyBoy
初階會員 發表:18 回覆:97 積分:48 註冊:2003-07-11 發送簡訊給我 |
Dear 各位朋友
目前我遇到一個問題,希望知道如何解的人能幫忙一下 我的目的 : 在 Form 上畫出我指定的影像 (例 BMP or JPG ) 我知道利用 Form1->OnPaint 來處發 (如下) void __fastcall TForm1::FormPaint(TObject *Sender)
{
Canvas->Draw(0, 0, MyBitmap);
} 但 BCB 似乎是 Form 先表像,之後在畫上去
所以看的出來,一開始秀出底色,之後再由上到下 RePaint 出我的圖形 雖然在 XP Home or Professional 反應比較快
但在 XP Embedded 上就看的很明顯....>< 我試過 BMP , JPG , Image ,似乎改善不大....
有時系統資源不足時還會拖到 2 ~ 3 秒 我的同事用 VB 的做法
因為 VB 的 Form 上有 Picture 的屬性
在 Init 前就先 Load Image
所以在還沒表像前...Form 的樣子就已經是圖的樣子
所以看不出來有Paint的動作 而 BCB 似乎沒辦法在 Form Show 前決定 Form 的樣子
希望了解的人能指點一下.... 發表人 - taishyang 於 2003/10/24 12:11:51
|
RaynorPao
版主 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
引言: Dear 各位朋友 目前我遇到一個問題,希望知道如何解的人能幫忙一下 我的目的 : 在 Form 上畫出我指定的影像 (例 BMP or JPG ) 我知道利用 Form1->OnPaint 來處發 (如下) void __fastcall TForm1::FormPaint(TObject *Sender) { Canvas->Draw(0, 0, MyBitmap); } 但 BCB 似乎是 Form 先表像,之後在畫上去 所以看的出來,一開始秀出底色,之後再由上到下 RePaint 出我的圖形 雖然在 XP Home or Professional 反應比較快 但在 XP Embedded 上就看的很明顯....>< 我試過 BMP , JPG , Image ,似乎改善不大.... 有時系統資源不足時還會拖到 2 ~ 3 秒 我的同事用 VB 的做法 因為 VB 的 Form 上有 Picture 的屬性 在 Init 前就先 Load Image 所以在還沒表像前...Form 的樣子就已經是圖的樣子 所以看不出來有Paint的動作 而 BCB 似乎沒辦法在 Form Show 前決定 Form 的樣子 希望了解的人能指點一下....CuteBabyBoy 你好: 先試試看把 Form 的 DoubleBuffered 設為 true >
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
CuteBabyBoy
初階會員 發表:18 回覆:97 積分:48 註冊:2003-07-11 發送簡訊給我 |
Dear RaynorPao 的確,您的方式的確讓 Form->Paint 的速度變快 ( 是個不錯的方式 )
Form1->DoubleBuffered=true; 已經看不到 Form 畫的過程 ( 謝謝您的指導 ) 但現在演生一個問題 如果 Form 上加了一個 Edit
則先秀出 Edit 之後再秀 Form 有什麼方式能更完整的秀出...... 當一切 Object 都 Ready 後再顯像 ? 我現在正在 Try 當然 如果能在 Application->Run(); 前就先 Ready 就更好 Anyway 希望能有更好的解..... 當然還是很謝謝 RaynorPao !!!
|
流
中階會員 發表:36 回覆:142 積分:70 註冊:2003-07-24 發送簡訊給我 |
|
CuteBabyBoy
初階會員 發表:18 回覆:97 積分:48 註冊:2003-07-11 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |