电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

解决API缓沖写屏幕时无法写入图片文字


发布日期:2021/3/13
 

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

GetMetrics(SX_SCREEN) GetMetrics(SX_SCREEN)

CanvasDC SRCCOPY );

PS:

我的KeyBoardMenu的Show()的Draw居然放在Delay里怪不得这样写屏幕还是一闪一闪的

放出来就好了~我可不吝啬写屏幕呢!因为Game类的MainLoop已经控制FPS啦~

上一篇:Coolite 开发心得

下一篇:HyperLink链接到项目中的文件