- Rongsen.Com.Cn 版权所有 2008-2010 京ICP备08007000号 京公海网安备11010802026356号 朝阳网安编号:110105199号
- 北京黑客防线网安工作室-黑客防线网安服务器维护基地为您提供专业的服务器维护,企业网站维护,网站维护服务
- (建议采用1024×768分辨率,以达到最佳视觉效果) Powered by 黑客防线网安 ©2009-2010 www.rongsen.com.cn
 
  
    
| 作者:黑客防线网安ASP维护基地 来源:黑客防线网安ASP维护基地 浏览次数:0 | 
Situation:
CreateCompatibleDC出来的HDC都是有值的
但是就是无法写入,图片,文字都没有办法,可是GetDC出来的就是可以。
今天调试了好久,都不知道是什么问题。
Quetion:
如何使用CreateCompatibleDC来创建缓冲绘图?
Solution:
除了CreateCompatibleDC之外
还要给DC配备点画布来绘图啊!
自然要SelectObject喽!
代码如下:
HDC hdc = GetDC( hwnd ); 
HDC CanvasDC = CreateCompatibleDC( hdc ); 
HBITMAP CanvasBMP = CreateCompatibleBitmap( hdc ); 
/* */ 
/*这句话很重要,相当于绑定*/ 
/*这些就可以轻松绘制啦! */ 
/* */ 
SelectObject( CanvasDC, CanvasBMP) 
/* */ 
/*别忘记最后要绘制到屏幕上哦!*/ 
/* */ 
BitBlt( hdc, 0, 0, 
GetMetrics(SX_SCREEN), GetMetrics(SX_SCREEN), 
CanvasDC, 0, 0, SRCCOPY ); 
PS: 
我的KeyBoardMenu的Show()的Draw居然放在Delay里,怪不得这样写屏幕还是一闪一闪的。
放出来就好了~我可不吝啬写屏幕呢!因为Game类的MainLoop已经控制FPS啦~ 
| 我要申请本站:N点 | 黑客防线官网 | | 
| 专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479 |