求助:WinForm中如何将Label的背景变成透明??
最近做的一个功能,用Label遮盖百度地图的Logo,不让鼠标点击百度地图的Logo触发事件,效果是让Label背景变成透明?我
已经将Label的背景色BackColor="Transparent" 设置成透明的了,可是效果还是遮盖地图logo,并没有变成透明?
背景色与窗体的背景是一致的。。我该如何改呢???
请哪位高手赐教一下?最近被这个问题所困扰??
------解决方案--------------------又要遮盖又要透明?? :(
是吧label放在一个webbrowser上吗?
百度地图是白色的,你吧label背景放白色不挺好吗
------解决方案--------------------Opacity这个属性可以设置透明度
------解决方案--------------------把label设置成某个特定颜色
然后程序里设置成 指定颜色透明
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------查找DOM把LOGO的事件注销得了
------解决方案--------------------
------解决方案--------------------写一个自定义用户控件去遮住呗
C# code
public partial class Transwindow : UserControl
{
public Transwindow()
{
InitializeComponent();
SetStyle(ControlStyles.SupportsTransparentBackColor
| ControlStyles.UserPaint
| ControlStyles.AllPaintingInWmPaint
| ControlStyles.Opaque, true);
this.BackColor = Color.Transparent;
}
protected override CreateParams CreateParams
{
get
{
//return base.CreateParams;
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x00000020; //WS_EX_TRANSPARENT
return cp;
}
}
------解决方案--------------------
用自定义控件吧
------解决方案--------------------
放一个DIV把log遮住,DIV中放空格
------解决方案--------------------
------解决方案--------------------
添加一个panel,然后把百度地图logo设为背景图片,试试
------解决方案--------------------
------解决方案--------------------
这样试试
方法1,你调用地图的时候返回的是个网页,你在显示前,修改下其源文件,把那个logo的链接或者js部分删掉
方法2,使用一个控件遮挡那个logo,这个控件使用logo作为背景图片即可,但是需要你控制其所在位子,以保证实时遮挡