双缓冲的住代码段
来源:互联网 发布:windows触摸虚拟手柄 编辑:程序博客网 时间:2024/05/21 10:39
//hdc为显示图像窗体的DC
HDC dc;
HBITMAP bit;
int Width = pbi->bmiHeader.biWidth;
int Height =pbi->bmiHeader.biHeight;
//创建兼容DC和Bitmap
dc = ::CreateCompatibleDC(hdc);
bit = ::CreateCompatibleBitmap(hdc, Width, Height);
HBITMAP oldBit = (HBITMAP)::SelectObject(dc, bit);
//在刚创建的dc上显示图像
::StretchDIBits(dc, 0,0,Width, Height,0,0,Width, Height,
pImageBuffer, pbi, DIB_RGB_COLORS,SRCCOPY);
//调用CDC函数在刚创建的dc上画线或写字等
HPEN pen = ::CreatePen(PS_SOLID, 1, RGB(240,0,0));
HPEN oldPen = (HPEN)::SelectObject(hdc, pen);
POINT dot;
::MoveToEx(dc, 0, K_SIZEY/2, &dot);
::LineTo(dc, K_SIZEX, K_SIZEY/2);
::MoveToEx(dc, K_SIZEX/2,0, &dot);
::LineTo(dc, K_SIZEX/2, K_SIZEY);
//资源释放
::SelectObject(hdc, oldPen);
::DeleteObject(pen);
//将已绘制好的dc拷贝到显示窗体上
::StretchBlt(hdc, 0,0,Width, Height, dc, 0, 0, Width, Height,SRCCOPY);
//////////////////////////////////////////////////////////////////////////
//资源释放
SelectObject(dc, oldBit);
::DeleteDC(dc);
::DeleteObject(bit);
- 双缓冲的住代码段
- 好像就是个双缓冲的问题吧,给段代码看看
- 双缓冲的实现关键代码
- [Windows] 双缓冲代码
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 数据段、代码段、堆栈段、BSS段的区别
- 关于怎么学习API (OpenGL/Direct3D等) -针对初学者
- C++ 虚函数表解析(牛人的解析,清晰明白)
- 最大子序列和最大子矩阵
- 在jdev开发的程序中同时有sysbaseIQ和oracle数据库的配置方法
- extern "C"
- 双缓冲的住代码段
- luaplus 与官方文档慢慢扯(二)
- C语言嵌入式系统编程修炼
- bitfields 位字段
- HeapAlloc, GlobalAlloc, LocalAlloc, VirtualAlloc, malloc, new的异同
- 解决asp.net 想入Cookie、js读取cookie乱码问题
- 杂记 05/07/2011-2
- C/C++:程序的内存分配方式
- 反省