简单而奇怪的有关问题,关于对话框中使用字体
简单而奇怪的问题,关于对话框中使用字体
在我的对话框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
在我的对话框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