1

有没有办法更改表单上所有组件的默认字体?

在win8中,默认的“MS Sans Serif”看起来很薄而且褪色。列表中在其上方显示了一个新字体,我假设 MSoft 出于某种原因为 win8 添加了它。它被称为“Microsoft Sans Serif”,是一种更干净且略带粗体的字体。

我使用此链接更改表单的默认值,认为(希望)所有组件都将使用父字体,但遗憾的是,没有。注册表调整唯一改变的是表单的标题字体。Form 的主体以及其上的组件仍然使用瘦旧的“MS Sans Serif”。

除了每次更改表单的正文字体之外,是否有某种方法可以强制所有组件使用较新的字体?

4

1 回答 1

1

Delphi 5 不支持DefaultFont属性。

您可以通过将ParentFont所有表单和控件的属性设置为 true 来解决此问题。

使用或不使用DefaultFont:应用程序中的所有Name字体(尤其是、HeightStyle)都必须相同才能使其正常工作。

解决问题的另一种方法是编写一个递归访问所有控件的方法,并将on /的Name属性替换为已安装字体的名称。这适用于所有 Delphi 版本。FontsFormsControls

所以答案是肯定的,你可以。

编辑:这种方法的示例:整个项目的字体一致性?

于 2013-08-22T12:25:27.287 回答