CEdit字体的设置问题
编译器是VS2013
我在给CEdit控件设置字体大小时候出现的问题,
使用以下方法,结果还是有问题。
方法一:
CFont m_Font;
m_Font.CreateFont(
-31, 31, 2, 0, FW_BOLD, FALSE, FALSE, 0, ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, FF_SWISS, _T("黑体"));
m_edit.SetFont(&m_Font, TRUE);
m_edit.SetWindowText(TEXT("TEXT"));
结果:行高改变了,字体高度未变。
方法二:
CFont m_Font;
m_Font.CreatePointFont(31, _T("黑体"));
m_edit.SetFont(&m_Font, TRUE);
m_edit.SetWindowText(TEXT("TEXT"));
结果:行高未改变,字体高度变化,导致字体大部分看不到
方法三:
CFont myFont;
LOGFONT lf; //定义字体结构
lf.lfWeight = 16; //字体磅数=16
lf.lfHeight = 56; //字体高度56
lf.lfWidth = 20; //字体宽度20
lf.lfUnderline = TRUE; //无下划线
lf.lfStrikeOut = FALSE; //无删除线
lf.lfItalic = FALSE; //非斜体
lf.lfEscapement = 0;
lf.lfCharSet = DEFAULT_CHARSET; //使用缺省字符集
wcscpy_s(lf.lfFaceName, _T("黑体")); //字体名=@system
myFont.CreateFontIndirect(&lf); //创建逻辑字体
m_edit.SetFont(&myFont, TRUE);
m_edit.SetWindowText(_T("TEXT"));
结果:同方法一
谢谢解答或查看。