【问题标题】:Creating rich UI based on PNG images基于 PNG 图像创建丰富的 UI
【发布时间】:2011-08-12 12:45:41
【问题描述】:

当我提供一组 PNG 图像时,如何在 Delphi 中创建丰富的 UI?我需要用 PNG 图像“皮肤”按钮/面板/页面控件。 必须支持 PNG 透明度。 任何组件/解决方案?

说清楚: 我不是要求典型的“剥皮”解决方案,也不是要求 delphi7 中的 PNG 支持。 而是用于包含基本控件(按钮、页面控件)的解决方案/组件集/库,可以设置背景图像。 每个元素都有完全不同的图像,所以不是关于换肤

【问题讨论】:

  • 您正在寻找完全剥皮的解决方案?商业还是非商业?

标签: delphi png delphi-7 rich-ui


【解决方案1】:

在 Delphi 7 中您将很难做到这一点。最新版本的 Delphi 对 PNG 提供了出色的支持,包括透明度。我知道这不是您问题的简单答案,但我认为这将是最好的解决方案。

【讨论】:

  • 大卫,我认不出你了。无论如何都要 +1
  • @daemon_x 有人建议我摘下冬帽来纪念夏天。这是来自菲律宾的热带地区,所以绝对没有帽子!
  • 你丢了帽子,即使夏天快结束了,如果我们可以称它为夏天:-)
  • 菲律宾?具体在哪里? (是的,我知道这是题外话)。六月的大部分时间我都在菲律宾(马尼拉,拉古纳,东方民都洛岛,长滩岛)。
  • 问题在于支持图像的组件,而不是 png 支持本身(我有一个库可以为 TGraphic 本地处理它)
【解决方案2】:

我从 Delphi 7 开始就一直在使用 TPngComponents。它为大多数 delphi 内置/第三方组件提供了非常好的 png 支持。 Embarcadero 购买了另一个众所周知的开源 PNG 支持组件,称为 TPngImage,并在以后的 Delphi 版本中内置到 Delphi 的本机图形支持中。然而,原生 png 支持似乎更难使用并且存在更多问题。请注意,某些组件不支持透明度,因此您必须自己进行一些测试。

通过快速搜索,我还没有找到原始包,但找到了一个主要针对 Delphi 2009/2010 的更新的修改包,但提到“应该与 Delphi 7 兼容”

我自己现在在 Delphi 2010 中使用该版本。

编辑:感谢 Uwe Rabbee 指出 Codegear(现为 Embarcadero)购买的产品是另一个组件 TPngImage,而不是 This Post 中的 TPngComponent

【讨论】:

    【解决方案3】:

    我们使用DevExpress Skinning Library。使用这些组件,您可以使用 png 来创建自己的皮肤。但是从头开始会做很多工作......

    【讨论】:

      【解决方案4】:

      您可以查看DelphiAsioVST 库。

      这是一个很棒的库,可帮助您创建音频软件,但它包含您可以使用位图的组件,例如用于转盘或滑块。

      对于拨号控制,您可以为每个可能的位置使用一系列图像,以使用户界面看起来像这样:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-06-24
        • 1970-01-01
        • 2021-12-06
        • 1970-01-01
        • 1970-01-01
        • 2021-09-06
        • 2019-11-01
        • 2011-01-24
        相关资源
        最近更新 更多