【发布时间】:2018-10-15 19:11:52
【问题描述】:
在不支持 Per-Monitor v2 的系统上,如何在 DialogBox 对话框中启用 DPI 缩放的非客户区?
您应该在WM_NCCREATE 中调用EnableNonClientDpiScaling,但此消息不会发送到DialogBox 对话框!
【问题讨论】:
标签: windows winapi windows-10 dpi highdpi
在不支持 Per-Monitor v2 的系统上,如何在 DialogBox 对话框中启用 DPI 缩放的非客户区?
您应该在WM_NCCREATE 中调用EnableNonClientDpiScaling,但此消息不会发送到DialogBox 对话框!
【问题讨论】:
标签: windows winapi windows-10 dpi highdpi
在调用DialogBox 之前设置WH_CALLWNDPROC 线程hook 并在第一次收到WM_NCCREATE 消息时调用EnableNonClientDpiScaling 似乎确实有效,但感觉就像一个巨大的黑客攻击。
我想您可以尝试验证 HWND 是否是与您的 DLGPROC 的对话,以使其更加健壮但仍然不理想。
【讨论】: