Delphi中作为窗体背景的图像

Delphi中作为窗体背景的图像,delphi,Delphi,我使用的是Delphi2006。我有一些带有透明胶片的PNG图像,我必须使用它们创建一个GUI(顶栏,左面板…)。这些图像具有不同的对齐特性。其中一个图像是表单的背景。这里的问题是,我不能将它作为alClient对齐,因为它只占据了其他图像留下的矩形区域,在它们的透明区域中显示了裸露的画布。我需要的是将背景图像放在所有其他图像的后面,并采用所有画布大小 有什么办法可以这样做吗?我知道我可以在表单的OnResize事件中写一些逻辑,但我只是好奇我是否遗漏了什么 谢谢。在表单上添加一个标记,并将其与

我使用的是Delphi2006。我有一些带有透明胶片的PNG图像,我必须使用它们创建一个GUI(顶栏,左面板…)。这些图像具有不同的对齐特性。其中一个图像是表单的背景。这里的问题是,我不能将它作为alClient对齐,因为它只占据了其他图像留下的矩形区域,在它们的透明区域中显示了裸露的画布。我需要的是将背景图像放在所有其他图像的后面,并采用所有画布大小

有什么办法可以这样做吗?我知道我可以在表单的OnResize事件中写一些逻辑,但我只是好奇我是否遗漏了什么


谢谢。

在表单上添加一个标记,并将其与“alClient”对齐。然后在表单上放置一个“alClient”对齐的面板。启用主题并设置“ParentBackground”属性时,TPanel是透明的。然后将图像放在面板上,随意对齐。如果主题未启用的时间很重要,则可以使用作为库的一部分的“TJvPanel”。谷歌上的搜索似乎也揭示了一些透明面板的代码

不过,上述内容无助于“png”的透明度。AFAIK png支持(透明)是与D2009一起添加的,我不知道这个支持是否包括TImage


编辑:实际上,我似乎把TImage加载png图像的能力归功于JVCL库本身,而且它似乎支持TImage的透明“png”很好。

请注意,尽管主题类似,但这不是or的副本。谢谢,Sertac。你的建议听起来是解决这个问题的好办法。我对透明的png没有问题,因为我使用了第三方组件来实现这一点。