原文地址:
对话框大小与像素关系
作者:
蒋佩钊(jk-3126)
对话框资源中的尺寸数值是对话框单位,该大小的单位不是像素而是DLU(dialog logical units),它是与分辨率无关的坐标单位。它与像素之间的转换关系与当前对话框字体有关。不是像素,要转换成像素,可以借助于 MapDialogRect 来转换。
如果想手动计算,用下面的算法:
pixelX = MulDiv(dialogX, 对话框水平基本单位, 4)
pixelY = MulDiv(dialogY, 对话框垂直基本单位, 8)
pixelX = MulDiv(dialogX, 对话框水平基本单位, 4)
pixelY = MulDiv(dialogY, 对话框垂直基本单位, 8)
使用Visual Studio 6.0(Visual C++ 6.0)开发的过程中,对话框中的控件在资源编辑器中的尺寸和其实际的像素尺寸之间的对应问题非常的令人烦恼。特别是在要求对话框控件大小随屏幕分辨率或程序窗口大小变化而变化时就更加令人挠头。