如何根据PNG图像使表单透明?
我有一个使用透明度的 PNG 图像(它实际上是一个具有从中间黑色到边缘透明的渐变效果的圆圈)。我使用 TImage
将其放在表单上。我将 TForm1.Color
和 TForm1.TransparentColorValue
设置为相同的值和 TForm1.TransparentColor:=true
。
现在,当我运行该程序时,图像的渐变部分与表单的颜色一起显示。我正在寻找的是使用透明表单效果启用 PNG 图像的透明度。
我做错了什么? 我正在使用 Delphi 2010 试用版。
I have a PNG image that uses transparency (it is actually a circle with gradient effect from black in the middle, to transparent on the margins). I am putting this on a form using TImage
. I set TForm1.Color
and the TForm1.TransparentColorValue
to the same value and TForm1.TransparentColor:=true
.
Now, when I run the program the gradient part of the image is displayed with the color of the form. What I am looking for is to enable the transparency of the PNG image using the transparent form effect.
What am I doing wrong?
I am using Delphi 2010 Trial.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我怀疑您正在尝试创建类似透明的 splashscreen 之类的东西,如果是这样的话,您可以阅读这些精彩的文章,他们描述了一种在 Delphi 表单中使用透明 png 的好方法。
再见。
I suspect you're trying to create something like a transparent splashscreen, if that's the case, you can read these great articles, they describes a nice way to use a transparent png in a delphi form.
Bye.
你的设置是错误的。我正在这样做(使用位图)。
TImage.Transparent 应该为 false。
Form.TransparentColourValue 应该是 TImage 中您想要透明的部分的颜色。
Form.TransparentColor 应该为 True。
[编辑]
如果图像完全覆盖表格,那么表格的颜色并不重要
Your settings are wrong. I am doing this (With a bitmap).
The TImage.Transparent should be false.
The Form.TransparentColourValue should be the colour of the part of The TImage that you want to be transparent.
The Form.TransparentColor should be True.
[Edit]
It does not matter what colour the form is if the Image covers it completely