这个大体思路是:
1,设置static为不可见,因为这个控件默认是自绘的,所以你你输出的内容一刷新,就看不到了。
2,获取static控件的 clientrect(),然后在这个矩形区域中,就可以画图,或者textout文本了。
3,在onpaint()函数里面重绘你要输入的内容,这样每次收到WM_PAINT消息,你的内容都可以重绘。
MFC中能改变TextOut输出的字体的大小吗
1、可以调用dos控制台的命令system(”color xx”)改变文字颜色。
设置默认的控制台文字和背景颜色。
COLOR [attr]
attr 指定控制台输出的颜色属性
颜色属性由两个十六进制数字指定 — 第一个为背景,第二个则为文字。每个数字可以为以下任何值之一:
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 浅绿色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色
如果没有给定任何参数,该命令会将颜色还原到 CMD.EXE 启动时
的颜色
2、例程:
1
2
3
4
5
6
7
#include <stdio.h>
#include <stdlib.h>
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()//删除新字体
怎么修改TextOut 输出字体 的颜色
TextOut (hdc, x, y, psText, iLength)
TextOut向窗口的显示区域写入字符串。psText参数是指向字符串的指针,iLength是字符串的长度。x和y参数定义了字符串在显示区域的开始位置。hdc参数是「设备内容句柄」,请确定输入的字符串长度。如果TextOut(hdc,x,y,TEXT(”Hello”),5),里面函数的字符串长度5改成了更大数值,则后面就会出现乱码,假如输入的字符串中含有中文字符,则一个中文字符的长度仍然为1,因为中文、韩文、日文等都属于双字节字符集DBCS,则此时字符串中的字符数不能由字符串的字节数决定。(程序会剖析字符串来决定其长度,而且必须检查每个字节以确定它是否为双字节字符的首字节)。因此TextOut(hdc,x,y,TEXT(”中文a”),3)能正常显示,
TextOut(hdc,x,y,TEXT(”中文a”),5)则会输出乱码,希望可以解决你的疑问。
设置一个带有颜色的FONT字体,并SelectObject到对应的设备DC之后,在TextOut即可,具体代码根据语言环境的不同有差异,可以参考网上有大量的创建字体的代码。
如果只是希望单纯修改颜色,那么通过设置dc的SetTextColor即可。
SetTextColor(hdc,RGB(0,255,0))
TextOut(hdc,10,60,strShow.c_str(),(int)strShow.length())
以上就是关于textout函数具体怎么用全部的内容,如果了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!