[.NET] GDI+透明度問題
我想要在一個圖片上顯示一些格線和標記
目前的做法是在PictureBox裡面顯示一個影像檔
利用Dim g as Graphics = PictureBox.CreateGraphic()
在GDI+圖層g上面畫格線和標記
碰到的困難是,當g是在顯示影像檔的PictureBox上產生的圖層時
PictureBox載入影像後,無法直接繪製g上面的圖
例如
PictureBox.Image = New Bitmap(path)
Dim g As Graphics = PictureBox.CreateGraphics()
g.DrawLine(Pens.Green, x1, y1, x2, y2)
這樣的寫法,圖會顯示出來,但線不會畫出來
但是將後兩行搬到別的事件裡面引發則完全OK
這是什麼原因呢?
目前想嘗試用第二個PictureBox,設定透明的背景,疊在圖片的上面
可是將第二個PictureBox的BackColor設定為Transparent還是沒用
底下的圖會被遮住
要怎麼樣產生透明的PictureBox呢?
如果畫不出來的話,要怎麼樣讓PictureBox載入影像之後可以接受繪圖的指令
而不用寫到另一個事件裡面
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.25.118.82
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Visual_Basic 近期熱門文章
PTT數位生活區 即時熱門文章