首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

简单而奇怪的有关问题,关于对话框中使用字体

2012-02-25 
简单而奇怪的问题,关于对话框中使用字体在我的对话框OnInitDialog()中想要得到对话框中使用的字体的高度,

简单而奇怪的问题,关于对话框中使用字体
在我的对话框OnInitDialog()中想要得到对话框中使用的字体的高度,于是写了这样几条语句
CDC   *   pdc   =   GetDC   ()   ;
int   height   =   (   pdc-> GetTextExtent   (   szTemp   )).cy
可是我在对话框的资源编辑器里怎样改变字体大小,比如9,10,12,所得到的height为什么都是16呢,是哪里写错了,各位来帮忙看看

[解决办法]
我觉的一个是设备上下文中的默认字体!
一个是在对话框上显示的字体大小!
不一样的
[解决办法]

LOGFONT pLogFont;
CFont* font=GetFont();
font-> GetLogFont(&pLogFont);
char* mn=pLogFont.lfFaceName;
int mm = pLogFont.lfHeight;
mm = -MulDiv(mm, GetDeviceCaps(*dc, LOGPIXELSY), 72);
试试看~~
[解决办法]
主窗口和子窗口的字体不一样的。
你要分别调用。
SendMessage,hWndTab,WM_SETFONT,hFontDefault,TRUE

热点排行