几年前,当 Vista 首次发布时,我曾问过这个问题,但从未解决该问题,并把它搁置起来以供以后考虑。
我有一个启动屏幕,我花了很大力气才让它看起来很棒。这是 32bpp alpha 混合的 PNG。我有一些代码(如果需要,我可以挖掘它们!),当桌面组合关闭时,它们在 Windows XP 或 Vista+ 下工作得很好。然而,在Vista+下,所有透明部分都是黑色的,破坏了它看起来很棒的一切!
所以,我的问题是这样的:是否有人能够将 32bpp alpha 混合的 PNG 显示为启动屏幕,无论是否激活桌面合成都可以工作?如果需要,无论免费还是其他方式,我并不反对使用第三方组件。
理想情况下,这可以在 Delphi 7 中运行。
更新:除了下面的答案非常有效之外,我发现 TMS TAdvSmoothSplashScreen 组件也可以很好地处理此任务,尽管稍微复杂一些。
最佳答案
蒂姆,我刚刚在 Vista/D2007 上尝试了此操作,并选择了“Windows 经典”主题:
Delphi 中的 Alpha 混合启动屏幕 - 第 2 部分 http://melander.dk/articles/alphasplash2/2/
我看不到黑色背景......它看起来仍然很棒。
关于delphi - 在 Delphi 中淡入 alpha 混合 PNG 表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1228820/