我正在尝试获得一个 500x520 像素的 Win32 对话框,但在我的 .rc 文件中,这些设置让我的窗口比我预期的要大。
IDD_DIALOG1 DIALOG DISCARDABLE 0, 0, 500, 520
STYLE DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX
某处有比例因子吗?
对话资源中的单元是通过相当复杂的过程由对话字体的尺寸标准化的对话单元。您可以使用 将对话单位转换为屏幕像素MapDialogRect()
。
文档中有更多详细信息,GetDialogBaseUnits()
但推荐的方法是调用MapDialogRect()
并让它为您完成艰苦的工作。