MFC中能改变TextOut输出的字体的大小吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC中能改变TextOut输出的字体的大小吗相关的知识,希望对你有一定的参考价值。
当然可以,过程稍复杂,如下例子:CDC *pDC;
//这里要将 pDC = 你要写字的那个窗口的DC
CFont newfont;//用来保存新字体
CFont *oldFont;//用来保存旧字体
newfont.CreateFontW(20,
11,
0,
0,
FW_NORMAL,
FALSE,
FALSE,
0,
ANSI_CHARSET,
OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,
DEFAULT_PITCH|FF_SWISS,
_T("宋体")
);//创建新字体
oldFont=pDC->SelectObject(&newfont);//选择新字体
pDC->SetTextColor(RGB(0,255,0));//设置字体颜色
pDC->TextOutW(10, 10, pDoc->text); //输出
pDC->SelectObject(oldFont);//选择回老字体
newfont.DeleteObject();//删除新字体 参考技术A 我来告诉你标准答案!使用SetBkMode(TRANSPARENT);设为透明的文字背景,然后输出文字,文字后就不会将图覆盖。 参考技术B 需要首先用CreateFont来建立一个字体对象,然后调用控件的SetFont,就可以了。例子:
1、改静态文体的ID,如:IDC_STATIC1
2、添加一个Edit控件,建立一个关联的控件m_editControl。本回答被提问者采纳 参考技术C 来告诉你标准答案!使用SetBkMode(TRANSPARENT);设为透明的文字背景,然后输出文字,文字后就不会将图覆盖。
MFC 编辑框字体大小问题
步骤一:在Dlg类中增加一个类成员变量: CFont m_editFont;
注意:这里Font对象必须是类成员变量,不能是局部变量,否则会出现只改变了光标的大小,而不能改变字体的大小。
步骤二:在OnInitDialog方法中增加下列语句:
m_editFont.CreatePointFont(180, "宋体");
m_editPlace.SetFont(&m_editFont); // 设置新字体
这里所谓的m_editPlace是什么?编辑框的变量么
MFC可以通过ctrl+w打开类向导然后选择上面的成员,对自己程序中的控件关联成一个变量这个变量类型可以是数据类型也可以是控件类型,通过UpdateData()函数来更新这个数据! 参考技术B 你应该把代码全贴上来 这一句怎么判断 ,我感觉可能是类对象。
以上是关于MFC中能改变TextOut输出的字体的大小吗的主要内容,如果未能解决你的问题,请参考以下文章