zoukankan      html  css  js  c++  java
  • VC++中双缓冲技术画图

    用双缓冲,先在内存中绘制,然后拷贝到屏幕DC,这样就不会出现画出去的情况了,前段时间我也是为这个问题费了不少劲。我把我的一段代码给你看一下:

    CDC   *pDC   =   m_drawbox.GetDC(); //这里的m_drawbox就是Picture控件对应的变量
    CDC dcMem;  
    CBitmap   bitmap;
    bitmap.CreateCompatibleBitmap(pDC,300,300);  
    dcMem.CreateCompatibleDC(pDC);  
    CBitmap   *pOld   =   dcMem.SelectObject(&bitmap);   
    
    
    dcMem.FillRect( CRect(0,0,300,300),(CBrush   *)dcMem.SelectStockObject(WHITE_BRUSH) );  
    POSITION   pos   =   m_EntityList.GetHeadPosition();  
    while(   pos   !=   NULL   )       m_EntityList.GetNext(pos)->Draw(&dcMem);//把链表中的图形全部绘制一编  
       
    pDC->BitBlt (0,0,300,300,&dcMem,0,0,SRCCOPY);  
    bitmap.DeleteObject();  
    m_‍drawbox.ReleaseDC(pDC);
    

      

  • 相关阅读:
    Gray Code
    Search a 2D Matrix
    Find Minimum in Rotated Sorted Array
    Feign理解
    Ribbon描述
    eureka自定义instance Id
    eureka开启用户认证
    idea创建Eureka consumer入门实例
    eureka描述
    activeMq的安全机制
  • 原文地址:https://www.cnblogs.com/arxive/p/11748232.html
Copyright © 2011-2022 走看看