在Visual Basic 2010中使Picturebox透明化

时间:2013-06-14 13:38:42

标签: visual-studio-2010

我是初学者所以请详细回答我,以便我能够做到。 我在2010年的视觉基础知识中做了一个简单的应用。

我的表单中有两个图片框,一个用于背景,另一个是要移动的对象...我必须使第二个图片框透明。 我有一个png图像插入到具有透明背景的盒子上。 请帮帮我..

1 个答案:

答案 0 :(得分:0)

这里,重要的是父母。您可以将透明图片加载到PictureBox(注意:您也可以加载BMP文件)。您可以将任何颜色定义为透明。看图。

在这个项目中:

Panel1的父级是Form1。

PictureBox1的父级是Panel1。

PictureBox2的父级是PictureBox1。

PictureBox3的父级是Form1。 Sample Project

如果你使PictureBox1透明,那么你会看到它只对Panel1透明(这是PictureBox1的父级)。换句话说,您可以在透明色下看到Panel1的背景。

如果你使PictureBox3透明,那么你会看到它只对Form1(PictureBox3'父)透明。换句话说,您可以在透明色下看到Form1的背景。

这就是为什么,据我所知,在你的项目中,PictureBox2的父级应该是PictureBox1。您可以为PictureBox1加载(或绘制)图片。然后,您可以将动画图片加载到具有透明色的PictureBox2。

请参阅以下代码:

...
    PictureBox2.BackColor = Color.Transparent
    PictureBox2.Size = New Size(1042, 1474)
    PictureBox2.Location = New Point(55, 0)
    Dim bmp As Bitmap
    bmp = (System.Drawing.Image.FromFile("empty.bmp"))
    bmp.MakeTransparent(Color.FromArgb(255, 255, 255))
    PictureBox2.Image = bmp
...

希望,这有帮助。