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);
    

      

  • 相关阅读:
    2019JAVA第三次实验报告
    第二次作业
    第一周作业
    2019年春总结
    第二周作业
    第十二周作业
    第十一周作业
    第十周作业
    第九周作业
    第八周作业
  • 原文地址:https://www.cnblogs.com/arxive/p/11748232.html
Copyright © 2011-2022 走看看