win32创建双缓冲

首先创建一个兼容的DC和位图:

	HDC hdc = CreateCompatibleDC(dc);
	HBITMAP hBitmap = CreateCompatibleBitmap(dc,width,height);
	HBITMAP hOldBMP = (HBITMAP)SelectObject(hdc,hBitmap);


绘制背景:

	::SetBkMode(hdc, TRANSPARENT);
    CRect rect = CRect(0,0, width, height);
	HBRUSH hBrush = CreateSolidBrush(RGB(255,255,255));
	FillRect(hdc,&rect,hBrush);
	DeleteObject(hBrush);

此处绘制白色背景,没有绘制背景,默认为黑色背景。


接下来可以绘制文本或图片,使用完成后:

	SelectObject(hdc, hOldBMP);
	DeleteDC(hdc);
	DeleteObject(hBitmap);
	DeleteDC(dc);

释放资源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值