Visual studio 2010 在Visual Basic 2010中使Picturebox透明

Visual studio 2010 在Visual Basic 2010中使Picturebox透明,visual-studio-2010,Visual Studio 2010,我是一个初学者,所以请详细回答我,以便我能做到这一点。 我正在用VisualBasics2010制作一个简单的应用程序 我有两个图片框在我的表格一个是背景,另一个是将要移动的对象。。。我必须使第二个图片框透明。 我有一个png图像插入到那个透明背景的盒子上。 请帮帮我这里,重要的是家长。您可以将透明图片加载到PictureBox(注意:您也可以加载BMP文件)。可以将任何颜色定义为透明。请看图片 在本项目中: Panel1的父级是Form1 PictureBox1的父级是Panel1 Pictu

我是一个初学者,所以请详细回答我,以便我能做到这一点。 我正在用VisualBasics2010制作一个简单的应用程序

我有两个图片框在我的表格一个是背景,另一个是将要移动的对象。。。我必须使第二个图片框透明。 我有一个png图像插入到那个透明背景的盒子上。
请帮帮我这里,重要的是家长。您可以将透明图片加载到PictureBox(注意:您也可以加载BMP文件)。可以将任何颜色定义为透明。请看图片

在本项目中:

Panel1的父级是Form1

PictureBox1的父级是Panel1

PictureBox2的父级是PictureBox1

PictureBox3的父级是Form1。

如果将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
...

希望有帮助。

有几种方法可以做到这一点,但您的问题记录得太少,无法给出建议。如果这是某种动画,那么成功的最有可能的机会是不使用2个pbs,而只是使用Paint事件来绘制图像。是的,这是一个动画,但是。我不知道油漆事件。我用picturebox创建了背景,因为背景也必须移动。然后我插入一个带有图片框的物体,但它不是透明的。好吧,你有一些东西需要聚焦。任何关于Winforms编程的介绍性书籍或教程都有很好的介绍,在这里重复这一点是没有意义的。