請問如何繪製透明的多邊形區域呢? |
尚未結案
|
David
一般會員 發表:13 回覆:26 積分:7 註冊:2002-04-14 發送簡訊給我 |
各位前輩好:
我想在PaintBox上繪製透明的多邊形區域,用了指令aCanvas.Polygon(...)方式,可是它是繪製成實心的,會蓋住下方的影像,一直沒找到能讓它透明的設定,調整aCanvas.Brush.Style發現它只有幾個樣式,或是中空沒顏色而不是透明能看到下層的,不知Delphi有這方面的功能嗎?請大家幫幫忙,謝謝。 我在網站上找了很久,好像只看到Bitmap本身有透明的設定,也看到有篇文章介紹個c指令CreatePolygon...,再將傳回值對個Panel設定(大致是這樣,我也不是很懂),但Delphi內有這個指令嗎?也有下載一些前輩做的透明SHAPE元件,但那些都是制式的,不能自訂的(我目前找到的),看他們有關透明部分原始碼的實做內容好像挺複雜,需寫蠻多程式碼才能搞定,不知有沒叫淺顯做法呢?麻煩大家幫個忙,感恩...
|
hahalin
版主 發表:295 回覆:1698 積分:823 註冊:2002-04-14 發送簡訊給我 |
節錄自help
procedure TForm1.Button1Click(Sender: TObject); var Bitmap : TBitMap; begin Bitmap := TBitmap.Create; try with Bitmap do begin LoadFromFile('C:\Program Files\Common Files\Borland Shared\Images\Splash\256color\factory.bmp'); Transparent := True; TransParentColor := BitMap.canvas.pixels[50,50]; Form1.Canvas.Draw(0,0,BitMap); TransparentMode := tmAuto; Form1.Canvas.Draw(50,50,BitMap); end; finally Bitmap.Free; end; end;參考看看,希望能幫得上忙 |
terrychen
尊榮會員 發表:90 回覆:794 積分:501 註冊:2003-05-01 發送簡訊給我 |
|
David
一般會員 發表:13 回覆:26 積分:7 註冊:2002-04-14 發送簡訊給我 |
非常感謝前輩們撥空指教,但是...
引言: procedure TForm1.Button1Click(Sender: TObject); var Bitmap : TBitMap; begin Bitmap := TBitmap.Create; try with Bitmap do begin LoadFromFile('C:\Program Files\Common Files\Borland Shared\Images\Splash\256color\factory.bmp'); Transparent := True; TransParentColor := BitMap.canvas.pixels[50,50]; Form1.Canvas.Draw(0,0,BitMap); TransparentMode := tmAuto; Form1.Canvas.Draw(50,50,BitMap); end; finally Bitmap.Free; end; end;這應該只是讓整個影像背景顏色透明的做法,我有做過,可是我是想請問在影像畫布上繪製透明的圖元,似乎不僅是如此... 引言: 您好: 找了ㄍ連結希望有幫助http://delphi.ktop.com.tw/topic.php?topic_Id=19527 或可以使用進階搜尋『不規則』 『form』我並不是要做透明的Form,當然如果我能參透這些透明的Form做法,或許能找到,只是想請教有無較簡單易做的方法,甚至是免費的透明多邊形元件也可以... 感謝兩位前輩的幫忙。 |
jaya
初階會員 發表:9 回覆:70 積分:30 註冊:2002-05-22 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |