Welcome 微信登录

首页 / 网页编程 / ASP.NET / 在Windows窗体中如何使用透明图片和标签

在Windows窗体中如何使用透明图片和标签2009-12-31 cnblogs Asidy译

昨天一朋友问到Windows窗体中图片透明的问题,刚上网看看了,在CodeProject上看到了这篇文章, 觉得写的不错,再者自己一直想学学翻译技术文章,所以就将其翻译成了中文,希望能给大家带来点帮 助。

申明:初次翻译此类文章,属处女作,难免有不对之处,欢迎大家拍砖指教!^_^

OK ,开始正文……

引言——没有透明度的Windows窗体

如果你制作 一些包括图片和标签的复杂的窗体,你可能会发现:Windows窗体不支持真正的透明。你可能撕裂了你的 头皮了——但仍没有解决!

即使,你在图片或标签的BackColor属性上使用了透明值 来控制,但结果是:你仍然发现不能使其透明。那么,这是为什么呢?为什么明明设置成透明了,却没 有透明呢?到底都发生了些什么呢?

实际上,当你在BackColor属性上设置透明值来控制的时候 ,只是将其背景设置成与父窗体——Windows窗体一样的背景而已,并没有真正的透明!所以 当它们重叠放在一起的时候你仍然会发现它们相互之间并没有透明,如下图所示:

在本文中, 我们将向你展示一个简单的方法来使得标签的后面图片作为背景,并如何使图片和文字真正的变成透明 。

如何制作透明标签

使图片作为背景而标签或文字在其前面进行显示是否真的很容易?

在下面,我们将讲解如何使标签的背景透明。

有二种方法,你可以使用它来很标签的背 景透明(其实有更多的方法可以做到这一点,但是我们只去谈论较为简单些的):

1.通过设 置Panel的BackGroundImage属性,并且将标签Lable放到它的里面

2.将Lable的父窗体设置成 PictureBox(label.Parent = pictureBox)

这样,我们将不需要编写任何的代码,并且我们可 以在设计器里马上看到其透明的效果: