这个问题几乎说明了一切,我已经尝试在属性部分将背面颜色设置为透明,但它似乎没有用。我在组合框后面有一张照片,我需要通过它来显示。有没有具体的方法呢?
由于
答案 0 :(得分:4)
透明属性不适用于重叠控件。我想你在PictureBox中有你的照片吗?
您可以通过以下两种方式解决此问题:
1)也许最简单的方法是将你的图片和GroupBox 放在一个Panel中(你设置了Panel的BackgroundImage属性)。那可行。然后GroupBox和Panel在技术上并不重叠,但GruopBox是Panel的孩子。这不需要代码,您可以直接在Forms Designer中看到。
2)使用表单的OnPaint或OnPaintBackground方法将图片直接绘制到表单上。
答案 1 :(得分:0)
如果您正在寻找WPF解决方案,请尝试以下方法。确保将Window.AllowsTransparency设置为true
<Window
AllowsTransparency="True" />
<GroupBox Background="Transparent" />
</Window>
答案 2 :(得分:0)
如果要在Visual Basic 6中执行此操作,可以使用以下代码执行此操作: -
Option Explicit
Const THEBorder As Integer = 24 'You might need to adjust:
'this value is to compensate
'border of picturebox...
'note that I put a width of 2
'for this border, to make it
'wider
Private Sub Form_Load()
With PicContainer
.AutoRedraw = True
.PaintPicture Me.Picture, 0, 0, , , .Left + THEBorder, .Top + THEBorder, .Width, .Height
End With
End Sub
如需进一步参考,请查看here