VB.NET表单透明背景

时间:2012-06-23 18:53:16

标签: vb.net winforms picturebox

我有了图片框和新表格
当我将表单添加到图片框中时,背景颜色为 argb(152,0,136)
我试图使用TransparencyKey,然后背景颜色是152,0,136 码:

Dim frm As New Form
frm.BackgroundImage = Image.FromFile(open.FileName)
frm.BackColor = Color.FromArgb(152, 0, 136)
frm.TransparencyKey = Color.FromArgb(152, 0, 136)
frm.TopLevel = False

PictureBox1.Controls.Add(frm)
frm.show()

1 个答案:

答案 0 :(得分:0)

以下代码经过测试且功能正常。我创建了一个新的WindowsApplication,它添加了基本表单和.vb代码隐藏。我在表单中添加了一个按钮。这是代码隐藏的全部内容:

Public Class Form1
    Public Sub AddTransparentImage()
        Dim pb As PictureBox = New PictureBox
        Dim bmp As Bitmap = Image.FromFile("C:\Users\Pete\Documents\test.bmp")

        bmp.MakeTransparent(Color.Black)
        pb.Image = bmp
        pb.Width = bmp.Width
        pb.Height = bmp.Height

        Me.Controls.Add(pb)
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        AddTransparentImage()
    End Sub
End Class

.bmp是黑色背景上带有彩色文字的图像。当在表单中加载时,图像的背景变得透明。