计算对话框编辑器的单位尺寸与象素的关系

Posted: 三月 5th, 2009 | Author: admin | Filed under: Program | Tags: , , , | 评论关闭

最近用CButtonST经常出现按钮下面出现1像素的斑点的问题,按钮大小不是根据按钮图片大小计算出来的,而是根据VC对话框编辑器的DLU的大小拖出来的…

解决办法如下:

http://support.microsoft.com/default.aspx?scid=kb;en-us;145994

How to calculate dialog box units based on the current font in Visual C++

我对话框用的Verdana 9号字, 根据这篇文章算出来
baseUnitX = 8
baseUnitY = 14

再根据
pixelX = (dialogunitX * baseunitX) / 4
pixelY = (dialogunitY * baseunitY) / 8
得出按钮图片像素宽度满足必须是2的倍数,高度必须是14的倍数,才能在VC的对话框编辑器里调出来合适的按钮大小…