Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Windows 中的默认对话框字体是MS Shell Dlg。
我不喜欢它,因为它不正确。
手动更改单个对话框项的字体很容易,但是在调用(或使用lfMessageFontATL / WTL)?DialogBox
lfMessageFont
DialogBox
我多次说“不是手动”的原因是我正在寻找一种比使用(或类似)循环遍历所有内容更好的解决方案。EnumChildWindows一个存在吗?
EnumChildWindows
从关于对话框:
系统字体在不同版本的 Windows 之间可能会有所不同。要让您的应用程序无论在哪个系统上运行都使用系统字体,请将 DS_SHELLFONT 与字体 MS Shell Dlg 一起使用,并使用 DIALOGEX 资源而不是 DIALOG 资源。系统映射此字体,以便您的对话框将使用 Tahoma 字体。请注意,如果字体不是 MS Shell Dlg,则 DS_SHELLFONT 无效。
我想这就是你想要的。如果这不起作用,那么我想您必须手动加载资源并修改 模板,然后再将其传递给 DialogBox。