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

TPaintBox 畫面被覆蓋的問題

尚未結案
l8939_c
一般會員


發表:9
回覆:15
積分:4
註冊:2005-03-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-01 23:46:52 IP:219.86.xxx.xxx 未訂閱
大家好    我用 TPaintBox 繪制矩形,圓形.... 但當畫面被別的程式的視窗覆蓋後 被覆蓋到的區域, 它原始的圖形就不見了 只剩下底色而已, 不知道該如何保留住圖形呢 ? 另外它的底色都是灰色的 有設定底色的方法嗎 ? 不可能是畫一個大矩形, 當做底色吧 <---------  這好像蠻遜的 !  
------
engineer
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-01 23:59:36 IP:218.168.xxx.xxx 未訂閱
您好: 這問題以前有被討論過 http://delphi.ktop.com.tw/topic.php?topic_id=69378 請多多利用[搜尋]功能 順心
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-02 01:07:56 IP:218.19.xxx.xxx 未訂閱
l8939_c 您好:    使用 PaintBox 繪圖確實會有您說的那個問題存在,您必須要將繪製動作放在 PaintBox 的 OnPaint 事件中才可以,如果覺得將各個繪製動作都記錄下來很麻煩的話,您可以另設一個不直接顯示的 TImage (Visible 屬性設為 false) 或是 TBitmap 物件,當您繪製圖形在 PaintBox 上面時,就將繪製結果複製一份到 TImage 或是 TBitmap 上面去,然後在 PaintBox 的 OnPaint 事件中就只要將 TImage 或是 TBitmap 的內容繪製到 PaintBox 上面去就可以了,例如:
PaintBox1->Canvas->Draw(0, 0, tempBitmap);
另外關於有關設定底色的方式很簡單,給您一個簡單的範例如下:
PaintBox1->Canvas->Brush->Color = clWindow;
PaintBox1->Canvas->Brush->Style = bsSolid;
PaintBox1->Canvas->FillRect(ClientRect);
系統時間:2024-05-19 5:18:30
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!