关闭Delphi 7应用程序的主题

时间:2019-07-12 10:20:59

标签: user-interface delphi themes manifest delphi-7

我不得不在一个已有20年历史的Delphi 7应用程序中修复某些问题。修复之后,我认为我将通过修复GUI主题来改进应用程序,因此我将XPManifest组件放在了主窗体上。尽管这使大多数控件具有更好的外观,但仍然存在一些问题。例如,有复选框和单选按钮,其蓝色背景为黄色文本( blargh ),主题设置的黑色文本颜色使其标签不可读。因此,我决定删除XPManifest组件并重建程序以恢复原始外观。

有趣的是,在删除XPManifest并重新编译exe之后,GUI主题仍然保留。我检查了DFM,发现XPManifest确实不在那儿。我该如何解决?

2 个答案:

答案 0 :(得分:5)

该组件所做的全部工作就是在use子句XPMan IIRC中添加一个单元,该单元链接启用主题的资源文件。从uses子句中删除该单元以还原行为。

这是修订控制值的明确指示。

答案 1 :(得分:0)

当时的VCL根本不是很了解主题。启用主题设置时,许多VCL组件均会显示错误,但禁用主题时则不会。将Soft-Gems' XP Theme Manager 1 安装到您的项目中。它不仅可以为您启用主题设置,还可以连接到VCL中以修复许多错误。

1:Soft-Gems的代码最终直接集成到了VCL中,但是我不记得这是在Delphi 7中还是以后发生。