我将屏幕拷贝下来选入内存兼容DC,然后在内存DC中绘图,再BitBlt进设备DC中。我现在需要做一个清空绘图的功能,只保留下拷贝的屏幕。需要将内存DC清空成初始状态,请问该如何做呢?
我试过在OnInitDialog()中m_nMemDC.SaveDC();
在OnPaint()中m_nMemDC.ReStoreDC();但是没有效果,请兄弟们帮帮忙

解决方案 »

  1.   

    不要把m_nMenDC.SaveDC()放在OnInitDialog()中,这是个初始化函数,只再初始化的时候被调用一次。
    你可以都放在OnPaint()中。再将屏幕拷贝到m_nMemDC后,SaveDC(),然后需要恢复的时候ReStoreDC()...试试这样。。
      

  2.   

    还是不大懂,m_nMenDC.SaveDC()如果放在OnPaint()中,每次重绘都会调用他,就会把以前存的冲销掉,我只需要它存一次,就是截取屏幕并选近设备中的那一次。我截屏选择进设备DC是在OnInitDialog()中进行了,谢谢