1

是否有一些简单的组件可以显示 PNG 32 位图像并在鼠标进入和鼠标离开时将其 alpha 混合到另一个图像?甚至只是一个可以加载 32 位 PNG 并且还具有 Alpha 参数的简单图像......

我想我可以使用一些皮肤库(alphacontrols?)或一些图形库,但是对于一些简单的纯视觉效果,这将是相当过分的,我似乎找不到一个简单的可以为我做的并且可以工作的玻璃表面也...

4

2 回答 2

1

它不是一个组件,但这里有一篇关于如何自己做的好文章的链接。它只是几行代码:

http://melander.dk/articles/alphasplash/

于 2010-06-08T15:36:56.907 回答
1

基本的 TImage 能够显示 PNG 图像并将其 alpha-blend-it 到它后面的任何内容。您只需将“pngimage”单元添加到表单的使用子句中。你没有提到你正在使用的 Delphi 版本:Delphi 2010 有这个单元,但我不知道他们开始发布的是什么版本的 Delphi。对于 Delphi 7,我确信您需要找到开源的“pngimage”。

如果您需要在用户移入和移出您的控制时执行此操作,请考虑在位图中缓存状态图像:它在运行时会更快,您可以使用显示当前图像的单个 TImage,您不需要两个重叠的 TIMage 控件。

于 2010-06-09T07:52:09.340 回答