【问题标题】:How to make transparent memos with VCL Themes?如何使用 VCL Themes 制作透明备忘录?
【发布时间】:2022-01-12 20:12:36
【问题描述】:

我正在使用 Delphi 11 中的 VCL 主题。它与已经存在的应用程序配合得很好,但备忘录没有样式,它们保持白色,如下图所示。

我应该怎么做才能使备忘录透明?尝试将颜色设置为 clNone 和 ParentColor true,但没有成功。

【问题讨论】:

  • 您尝试过Tools 菜单中的Bitmap Style Designer 吗?提示:制作您修改的样式文件 (.vsf) 的备份副本

标签: delphi delphi-11-alexandria


【解决方案1】:

如果您希望备忘录与表单颜色相同,那么我建议您将其颜色从 clWindow 更改为 clBtnFace

或者您可以在您的 VCL 样式的 SysColors 部分更改 clWindow 的颜色。

注意这会影响任何使用clWindow颜色的控件

【讨论】:

  • clBtnFace 已经有了,但是当我激活 VCL 主题时,它仍然会改变颜色。到目前为止,我的解决方法是手动将备忘录的颜色更改为与主题在表单上使用的颜色相同的颜色。但是每份备忘录都做起来很头疼……
  • @delphirules 在这种情况下使用interposer class 是一种常见的技巧。理想情况下,您应该首先将 TMemo 子类化,然后可以有一种简单的方法在您的应用程序中全局修改所有它们,但这至少是一种快速但同时获得您想要的东西的方法。
猜你喜欢
  • 1970-01-01
  • 2023-04-02
  • 1970-01-01
  • 2013-06-05
  • 1970-01-01
  • 2023-01-17
  • 1970-01-01
  • 1970-01-01
  • 2011-01-31
相关资源
最近更新 更多