首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

为什么在GDI 画图时,把上层的背景色和图都覆盖了。

2012-09-11 
为什么在GDI 画图时,把下层的背景色和图都覆盖了。。?如题!如何解决?3Q。。。[解决办法]不是大家不帮你,主要是

为什么在GDI 画图时,把下层的背景色和图都覆盖了。。?
如题!如何解决?3Q。。。

[解决办法]
不是大家不帮你,主要是你描述的不清楚:你在背景上面绘图,下面的背景本来就要被覆盖。

希望楼主说详细清楚点。Good Luck!
[解决办法]
如果是想写字,可以:
pDC->SetModule(TRANSPEANT);
[解决办法]

探讨
在 OnPaint() 函数中, 我先调用fun1()函数在一个区域中 用 CBrush 填充了一块区域(白色);
然后在调用一个画图 函数<fun2()> 对它再次画图(就画了几条线)结果填充的颜色不见了,
只剩下MFC界面的那个灰色了。 怎么解决。。?
(后来我把,fun2的代码加到fun1中就可以了。 感觉好像要 连在一起画似的。)


引用:

不是大家不帮……

[解决办法]
SetBkMode(TRANSPARENT)
[解决办法]
看样子 像是lz的DC没搞好吧
[解决办法]
用透明画刷就可以了!
[解决办法]
探讨
用透明画刷就可以了!

[解决办法]
用透明画刷就可以了! 

[解决办法]
pDC->SelectStockObject(NULL_BRUSH);
[解决办法]
探讨

还是不见效啊,我放得位置对吗?

CDC* pDC = pwnd->GetDC();
CBrush* pcb = new CBrush(RGB(255,255,255));

pDC->SelectStockObject(NULL_BRUSH);
pDC->SelectObject(pcb);
PDc->FillRect(&amp;rect,pcb);


引用 14 楼 ……

[解决办法]
这个你刷子有颜色 刷上去 肯定不会透明了(我的理解) 有个方法 用GUI 整副图上去(图片可以是纯颜色的) 然后让图片透明效果 个人观点 仅供参考。。

热点排行