代码之家  ›  专栏  ›  技术社区  ›  Averroes

Delphi中作为窗体背景的图像

  •  1
  • Averroes  · 技术社区  · 16 年前

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

    有什么办法吗?我知道我可以在窗体的onResize事件中编写一些逻辑,但我只是好奇是否遗漏了一些东西。

    谢谢。

    1 回复  |  直到 16 年前
        1
  •  2
  •   Sertac Akyuz    16 年前

    在表格上加上时间,并与“alclient”对齐。然后在窗体上放置“alclient”对齐的面板。启用主题并设置“parentbackground”属性时,tpanel是透明的。然后将图像放在面板上并随意对齐。如果未启用主题很重要,则可以使用“Tjvpanel”,它是 JVCL 图书馆。谷歌的搜索似乎也揭示了一些透明面板的代码。

    不过,上面的内容对“PNG”的透明度没有帮助。Afaik PNG支持(透明)与d2009一起添加,我不知道此支持是否包括timage。

    编辑 :事实上,我很有能力将PNG图像加载到Timage到jvcl库本身,而且它似乎支持透明的“PNG”和Timage。