我查看了很多方法,但它们不适合我的情况: 使用GDI绘制背景,对于我的应用程序,我需要一个固定在其上的图片框。 (静止图像也不能被GDI +绘制,因为背景每次都会更新,导致它消失。试图重绘图像,但它会产生难看的闪烁效果)。
当我尝试使用picturebox作为背景,并将其指定为叠加图像的父级以获得透明效果时,上面的图像根本不显示。这是VB代码:
Dim back As PictureBox
Dim silhouetteAs PictureBox
Dim img As Bitmap = New Bitmap(imgPath)
img.MakeTransparent(Color.White)
back = New PictureBox()
silhouette= New PictureBox()
silhouette.Parent = back
silhouette.Size = New Point(width, height)
silhouette.Location = New Point(xpos, ypos)
silhouette.Image = img
silhouette.BackColor = Color.Transparent
back.Parent = MAIN
back.Size = New Point(width, height)
back.Location = New Point(xpos, ypos)
back.BackColor = Color.Blue
背面是背景,而轮廓是顶部图像。 有人可以提供一个例子,说明通过育儿图片盒实现透明度的方式吗?或任何其他解决这种情况的方法?
答案 0 :(得分:0)
没关系,发现出了什么问题 - 当我指定另一个图片框作为父母时,我没有相对更新叠加图片框的位置。修正将是 添加:
silhouette.location=new point(0,0)
忘了坐标是相对于父坐标而不是表格。