2

Windows 中的默认对话框字体是MS Shell Dlg

我不喜欢它,因为它不正确。

手动更改单个对话框项的字体容易,但是调用(或使用lfMessageFontATL / WTL)?DialogBox

笔记:

我多次说“不是手动”的原因是我正在寻找一种比使用(或类似)循环遍历所有内容更好的解决方案。EnumChildWindows一个存在吗?

4

1 回答 1

2

关于对话框

系统字体在不同版本的 Windows 之间可能会有所不同。要让您的应用程序无论在哪个系统上运行都使用系统字体,请将 DS_SHELLFONT 与字体 MS Shell Dlg 一起使用,并使用 DIALOGEX 资源而不是 DIALOG 资源。系统映射此字体,以便您的对话框将使用 Tahoma 字体。请注意,如果字体不是 MS Shell Dlg,则 DS_SHELLFONT 无效。

我想这就是你想要的。如果这不起作用,那么我想您必须手动加载资源修改 模板,然后再将其传递给 DialogBox。

于 2011-08-28T06:03:35.840 回答