不知道你用过VB6没有,vb6里的image控件和label控件是可以完全透明的,就是控件下面不管有什么都可以显示出来。
站在用户的角度思考问题,与客户深入沟通,找到康县网站设计与康县网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、成都网站建设、企业官网、英文网站、手机端网站、网站推广、域名与空间、雅安服务器托管、企业邮箱。业务覆盖康县地区。
但vb.net里没有这样完全透明的控件了。
vb.net 里面设完背景色透明之后只显示出它属于的那个窗口的背景,比如form里有个label,label透明之后只能显示出他盖住的那部分form的图像,而如果panel里有个label的话,那他只显示panel的背景图像。
你可以这样的解决你的问题:
(我用的是vs。net2005)
button1.backcolor=transprent
这样你自己好好的试一试吧,我试了一下,感觉不错。
做二个窗口,下面那个透明,上面那个不透明。
解决移动的问题:移动上面那个窗口同时,要设置下面那个窗口的位置。做到同步移动,就可以实现你说的效果了。
Dim oBmp As Bitmap = new Bitmap(50, 30)
Graphics g = Graphics.FromImage(oBmp)
g.Clear(Color.White) ' 清除背景色
'.....
Me.TransparencyKey = Color.White
'将窗体上的所有白色设为透明。
Me.BackColor = Color.White
'将窗体设为白色,若包括窗体上的控件颜色在内,没有其他颜色,则全部透明。
1、将窗口的TransparencyKey属性设置成某一种颜色(在显示时,这种颜色会显示为透明),如:
Me.TransparencyKey = System.Drawing.Color.Red(可在属性窗口中指定或通过代码设置)
2、将Label的BackColor属性设置为与窗口的TransparencyKey属性相同的颜色,如:
Me.label1.BackColor = System.Drawing.Color.Red(可在属性窗口中指定或通过代码设置)
或
Me.label1.BackColor = Me.TransparencyKey(只能通过代码设置)
3、将Label的ForeColor属性设置为与窗口的TransparencyKey属性不相的颜色,如:
Me.label1.ForeColor = System.Drawing.Color.Blue(可在属性窗口中指定或通过代码设置)