注册 登录
编程论坛 VC++/MFC

DrawText的颜色问题

裂开的闭眼猪 发布于 2021-02-25 11:23, 1754 次点击
不要急,这不是改文字颜色
以下是一个响应窗口绘图事件的代码:
程序代码:
HDC hDc;
PAINTSTRUCT ps;
hDc=BeginPaint(hWnd/*定义了的窗口句柄*/,&ps);
HFONT hFont=
CreateFontA(20,8,0,0,FW_NORMAL,false,false,false,ANSI_CHARSET,OUT_CHARACTER_PRECIS,
CLIP_CHARACTER_PRECIS,DEFAULT_QUALITY,FF_MODERN,"微软雅黑");
SelectObject(hDc,hFont);
RECT rText={400,300,500,350};
SetTextColor(hDc,RGB(255,255,255));//这里改了字体的颜色
DrawTextA(hDc,"作业写完了吗?",21,DT_SINGLELINE|DT_CENTER|DT_VCENTER);
EndPaint(hWnd,&ps);
return 0;

结果如下:
只有本站会员才能查看附件,请 登录

我的窗口背景是黑色。当然,是因为文字的背景和文字都设置为了白色,所以看上去就是一个白坨坨。
我可以把文字设为黑色,如下图:
只有本站会员才能查看附件,请 登录

但这样效果不好。我想问,怎么样把这个背景设为黑色或透明呢?
望大神指导

[此贴子已经被作者于2021-2-25 11:27编辑过]

1 回复
#2
裂开的闭眼猪2021-03-25 22:16
谢谢,已经解决,用SetBkColor()函数
1