【发布时间】:2014-03-14 07:17:44
【问题描述】:
我有一个 (355,99) 尺寸的对话框,它只有一个菜单和任务栏,所以它的尺寸很小。它的显示在 100% dpi 下很好,但在 125% dpi 上,一些任务控件被切断。如何在以下函数中根据 dpi 缩放它们
void CMainFrame::OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI)
{
CMDIFrameWnd::OnGetMinMaxInfo(lpMMI);
lpMMI->ptMinTrackSize = CPoint(355,99); // set minimum size
}
【问题讨论】:
-
显然您从不想要对像素数量进行硬编码。对话框很特殊,它们不使用像素值,而是使用对话框单位。使用 MapDialogRect() 进行转换。
-
如何使用 MapDialogRect()?能给我举个例子吗?
标签: c++ visual-c++ mfc