如何繪製半透明效果的區域? |
答題得分者是:John Wong
|
h@visli
資深會員 發表:103 回覆:429 積分:431 註冊:2004-02-13 發送簡訊給我 |
我的地圖上需要在用戶點擊目標時,顯示一個信息框,以前我是直接在地圖組件上放一個TPanel來顯示,但這樣就遮住了地圖了。
現在希望在地圖控件上繪製一個帶透明效果的區域(地圖控件本身沒該功能支持)。如圖: <input type="image" src="http://feb04a.imghost.us/1UuF.png" border="1" /><br /> 我對GDI 繪圖不了解,請問如何實現?
------
------------------------ 博采眾家之長,奉獻綿薄之力 ------------------------ |
cartor
一般會員 發表:0 回覆:7 積分:1 註冊:2005-04-07 發送簡訊給我 |
放個透明的form在上面, 應該就可以達到類似的功能了,
用搜尋找一下, 板上蠻多製作透明form的討論的. ===================引 用 文 章=================== 我的地圖上需要在用戶點擊目標時,顯示一個信息框,以前我是直接在地圖組件上放一個TPanel來顯示,但這樣就遮住了地圖了。 現在希望在地圖控件上繪製一個帶透明效果的區域(地圖控件本身沒該功能支持)。如圖: <input type="image" src="http://feb04a.imghost.us/1UuF.png" border="1" /><br /> 我對GDI 繪圖不了解,請問如何實現? |
John Wong
初階會員 發表:1 回覆:35 積分:32 註冊:2004-09-18 發送簡訊給我 |
如果那個地圖控件有canvas property的話, 可以直接在canvas上自己畫一個半透明區域. 以下的例子是一個我以前做過的把一個小區域套上藍色的半透明.
for I := 0 to 63 do for J := 0 to 63 do begin C := BitmapBuffer.Canvas.Pixels[I 10, J 10]; BitmapBuffer.Canvas.Pixels[I 10, J 10] := RGB(GetRValue(C) div 2, GetGValue(C) div 2, 255); end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |