VC实现BMP位图实现

来源:互联网 发布:db2 sql取一条数据 编辑:程序博客网 时间:2024/04/28 17:00

 在控制中心主机可以实现位图的再现。过程如下:
1。建立一个同客户区相关的设备环境并建立一个与之兼容的设备环境
2。按位图格式在内存中创建一个与之兼容的内存位图
代码如下:


void CSurveillant_ClientView::OnInitialUpdate()
{
 CDC* pDC=GetDC();             //引用用户窗口指针定义对象pDC
 wdc.CreateCompatibleDC(pDC);  //建立与pDC兼容的DC
 bmp.CreateCompatibleBitmap(pDC,1024,768);
 wdc.SelectObject(&bmp);
 GetClientRect(&rect);
}
......//从网络接收数据
for(int i=0;i<iReadLen;i++)
{
 dot[pointer]=buffer[i];
 pointer++;
 if(pointer==1572864)//判断是否满一屏
 {
  GetClientRect(&rect);
  bmp.SetBitmapBits(1572864,(LPVOID)dot);//把内存数据复制到bmp中
  //把bmp中图像复制到用户窗口中
  GetClientRect(&rect);
  pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&wdc,0,0,1024,768,SRCCOPY);
  pointer=0;
 }

原创粉丝点击