我是初学者,所以请详细回答我,以便我能够做到。我正在 Visual Basics 2010 中制作一个简单的应用程序。
我的表单中有两个图片框,一个用于背景,另一个是要移动的对象...我必须使第二个图片框透明。我有一个png图像要插入那个透明背景的盒子上。请帮我 ..
我是初学者,所以请详细回答我,以便我能够做到。我正在 Visual Basics 2010 中制作一个简单的应用程序。
我的表单中有两个图片框,一个用于背景,另一个是要移动的对象...我必须使第二个图片框透明。我有一个png图像要插入那个透明背景的盒子上。请帮我 ..
在这里,重要的是父母。您可以将透明图片加载到 PictureBox(注意:您也可以加载 BMP 文件)。您可以将任何颜色定义为透明。看图片。
在这个项目中:
Panel1 的父级是 Form1。
PictureBox1 的父级是 Panel1。
PictureBox2 的父级是 PictureBox1。
如果您使 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
...
希望能帮助到你。