如何根据VC ++ / MFC应用程序中的当前DPI设置缩放字体大小?
截至目前,当我将DPI从100%更改为150%时,字体大小保持不变,尽管图标会根据当前dpi缩小。
请提出解决上述问题的最佳方法。
答案 0 :(得分:4)
在Windows Vista和7中,操作系统会尝试从程序中隐藏DPI并在后台进行调整。如果您希望程序对DPI更改做出正确反应,则必须遵循Microsoft标题为Creating a DPI-Aware Application的指南。
答案 1 :(得分:2)
通过在DLU中指定文本和控件大小。默认情况下会发生这种情况,因此我假设您正在动态生成对话框或从基于内存的DLGTEMPLATE生成对话框。如果你,你(原谅我的法语)搞砸了,因为你不得不把DLU转换成像素,这是一个非常痛苦和乏味的过程。阅读以下知识库文章:
答案 2 :(得分:2)
不要使用DPI进行字体缩放。而是使用用户在"外观"中设置的设置。控制面板部分。
您可能还需要考虑为您的应用程序配置字体大小。