0

我是初学者,所以请详细回答我,以便我能够做到。我正在 Visual Basics 2010 中制作一个简单的应用程序。

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

4

1 回答 1

0

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

在这个项目中:

Panel1 的父级是 Form1。

PictureBox1 的父级是 Panel1。

PictureBox2 的父级是 PictureBox1。

PictureBox3 的父级是 Form1。 示例项目

如果您使 PictureBox1 透明,那么您将看到它仅对 Panel1(它是 PictureBox1 的父级)是透明的。也就是说,透明色下可以看到Panel1的Background。

如果您使 PictureBox3 透明,那么您将看到它仅对 Form1(它是 PictureBox3 的父级)透明。也就是说,在透明色下可以看到Form1的Background。

这就是为什么,据我所知,在您的项目中,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
...

希望能帮助到你。

于 2016-12-12T08:07:46.540 回答