MFC图像处理中背景颜色设置的问题

如图所示的状况,相关代码pDC->SetBkColor(RGB(0,0,0));//消息区域的背景色pDC->SetBkMode(TRANSPARENT);//消息区域的... 如图所示的状况,相关代码
pDC->SetBkColor(RGB(0,0,0)); //消息区域的背景色
pDC->SetBkMode(TRANSPARENT); //消息区域的背景色设置为透明
第一个图就是用的第一行的代码,但我不想要黑色的边框,于是我设置了透明,即改用了第二行的代码
但是我发现时间那条的变化痕迹似乎会在对话框的背景图片留下来,也就会影响显示(如图2到图3),这我就崩了。。。
谁能帮我解释一下问题在哪。。十分感谢啊,最好能提一下解决方案
展开
 我来答
小柯师傅
2015-07-26 · TA获得超过919个赞
知道小有建树答主
回答量:202
采纳率:100%
帮助的人:279万
展开全部
透明后文字是刷新在父窗体上的!!!!
SetWindowText(你的数字);后强制刷新父窗口就可以
GetDlgItem(你的TEXT控件ID)->GetParent()->RedrawWindow();
wwwgmc
2015-07-26 · TA获得超过321个赞
知道小有建树答主
回答量:247
采纳率:0%
帮助的人:171万
展开全部
因为透明背景,所以原来的绘图不会被擦掉。
你先输出几个空格,把原来的擦掉,再输出数字即可。
更多追问追答
追问
问题我懂了。解决方法能说详细点不,我还是不知道该怎么解决。。。
输出的代码是
str.Format("游戏等级: %d",m_nLevel);
pDC->TextOut(667,460,str) ;
str.Format("剩余时间: %03d", m_timePoint);
pDC->TextOut(667, 480,str);
这种格式的。。该怎么改额。。
追答

你输出“剩余时间:113”的时候,先输出“剩余时间:     ”,在输出“剩余时间:113”

str.Format("游戏等级:     ");
pDC->TextOut(667,460,str) ;
str.Format("游戏等级: %d",m_nLevel);
pDC->TextOut(667,460,str) ;
str.Format("剩余时间:     ");
pDC->TextOut(667, 480,str);
str.Format("剩余时间: %03d", m_timePoint);
pDC->TextOut(667, 480,str);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式