DX们,请教下在PrintWindow成功使用后,如果该窗口里的内容发生了变化后,值不会刷新?
因为我用PrintWindow将画图里的画板窗口先载入一幅图片,读取出某个点的RGB,然后等待,在这过程中我又重新载入一幅图片,然后继续读取该点的RGB(前后该点颜色不同),可是仍然读出的是之前那个值啊,如何让来其刷新到改变后的值呢???

解决方案 »

  1.   


    载入图片后 RedrawWindow 强制刷新
      

  2.   

    我截取的是其他窗口啊.是想将hMemDC里的值刷新到hWnd窗口改变后的新颜色值啊,如:第1张图片某点为255,255,255,载入第2张图片后该点为0,0,0  ,然后我再GetPixel(hMemDC,x,y);值仍为255,255,255,如何使其得到0,0,0if(!printwindow(hWnd,hMemDC,0)){ 
         DeleteObject(hMemDC);
         DeleteObject(hbitmap);
         ReleaseDC(hWnd,hDC);
         return 2;
    }
    c1=GetPixel(hMemDC,x,y);
    getchar();//载入另一张图片后回车继续
    c2=GetPixel(hMemDC,x,y);  //c1==c2   我需要的是c1!=c2
      

  3.   

    printwindow就像相机一样 取到的是当前图像, 更换了图像 你就得在次 printwindow
      

  4.   

    那需要先将DeleteOject(hMedDC)吗,为什么我不执行上面这步操作,直接再printwindow(hWnd,hMemDC,0)会失败呢.
      

  5.   

    有没有更简单的办法呢,就是让hMemDC跟随目标窗口的改变自动刷新!就像前面的hDC一样,hDC=GetDC(hWnd),因为我需要的后台操作
      

  6.   

    楼主不觉得c2需要重新调用printwindow吗?
    printwindow出来的图像肯定不会随着目标窗口的变化而自动变化撒。