我已使用清单为我的 MFC C++ 应用程序启用了 gdiScaling 选项。 但是,我有一个使用 GDI 绘制的特定内部子窗口,它存在一些故障和性能问题。 是否可以仅针对此特定内部子窗口禁用“高级”gdiScaling,并恢复“经典”低质量重新缩放(但保持其余部分正确重新缩放)?
中所述启用gdiScalign您可以尝试使用 SetDialogDpiChangeBehavior 和 SetDialogControlDpiChangeBehavior 选择对话框中的特定窗口(或整个对话框本身)不使用 DPI 缩放功能。
欲了解更多详情,您可以参考以下链接:https://blogs.windows.com/windowsdeveloper/2017/04/04/high-dpi-scaling-improvements-desktop-applications-windows-10-creators-update /
在某些情况下,您需要控制 Windows DPI 缩放对话框甚至对话框的子 HWND。当你想要的时候 选择对话框或对话框中的 HWND 不自动缩放 DPI 可以使用SetDialogDpiChangeBehavior/SetDialogControlDpiChangeBehavior, 分别。