GetDialogBaseUnits函数返回Windows使用的对话框基本单位,以创建对话框。Windows和应用程序都使用这些单元将对话框和控件的宽度和高度从对话框模板中转换为像素,反之亦然。
LONG GetDialogBaseUnits(VOID)
参数
此函数无参数。
返回值
返回值是包含对话框基本单位的32位值。返回值的低位字包含水平对话框基本单位,高位字包含垂直对话框基本单位。
备注
水平基本单位等于系统字体中字符的平均宽度(以像素为单位);垂直底座单位等于字体的高度(以像素为单位)。此外,每个水平基座单元等于4个水平对话单元;每个垂直底座单元等于8个垂直对话单元。因此,要将对话框单位转换为像素,应用程序应用以下公式:
pixelX = (dialogunitX * baseunitX) / 4
pixelY = (dialogunitY * baseunitY) / 8
类似地,要从像素转换为对话单元,应用程序应用以下公式:
dialogunitX = (pixelX * 4) / baseunitX
dialogunitY = (pixelY * 8) / baseunitY
乘法在除法之前执行,以避免四舍五入的问题,如果基本单位不能被4或8整除。
也可以看看