【发布时间】:2018-06-14 12:55:46
【问题描述】:
我最近接触了 Delphi 10.2 Tokyo,并开始迁移使用 Delphi XE4 制作的项目。虽然我的应用程序像以前一样工作,但我对保存在 TImageList 中的图像有一个奇怪的问题。此图像列表连接到 TCategoryButtons 组。图像列表包含 16x16px 透明 PNG 文件。在面板中显示透明图像的目标在设计时有效,但在运行时不再有效。在运行时,黑色出现在图像之前透明的地方。
-
TImageList 有以下设置:
BkColor=clNone, BlendColor=clNone, ColorDepth=32bit, DrawingStyle=dsTransparent
应用程序使用主题
我尝试了什么:
- 清理和重建整个项目
- 更改图像列表内容(添加/删除的图像)
- 尝试了图片列表中的不同设置
- 新建了一个项目,添加了TCategoryPanel和TImageList,加载了相同的图片和设置,添加了一个主题->这可行O.O
之前有没有人有过这些影响并且知道如何解决?为什么这在设计时有效,但在运行时无效?
【问题讨论】:
-
透明的 PNG 实际上并不像您期望的那样。它不使用 PNG 中的透明度。而是使用纯色并将该颜色设置为图像列表中的透明色。
-
@JerryDodge 如果它在设计和运行时的行为方式相同,我会接受他的 - 如果这是错误情况。但是因为它以前有效并且如果我创建一个新项目也有效,所以这必须与项目相关。
-
东京的最新更新有一个 TPngImageList 似乎工作正常。
-
我有版本 25.0.29039.2004 这是最新的更新吗?有没有我错过的更新功能?
-
你的版本有 TPngImageList 吗?您可以使用它来代替 TImageList。
标签: delphi components vcl