我在对话框中放入PICTURE CONTROL后设置FRAME类型,在上面绘图后,下拉菜单及打开其它对话框遮盖后,图形缺掉一块,请问如何解决?马上给分!

解决方案 »

  1.   

    PICTURE CONTROL的FRAME类型改成RECT,看看?
      

  2.   

    将所画的图保存到内存中(CompatibleDC, CompatibleBitmap),窗口重绘时拷贝一下就行了。
      

  3.   

    你应该从CStatic继承一个自己的新类,并将PICTURE CONTROL的变量换成你自己的新类的类型,然后重载新类的OnPaint函数,将画图的代码放进去就行了
      

  4.   

    FBStudio(飞鸟) 请问具体如何操作?
      

  5.   

    HDC hDC = ::GetDC(your YourPictureControl hWnd);
    HDC hMemDC = ::CreateCompatibleDC(hDC);
    HBITMAP hBmp = ::CreateCompatibleBitmap(hdc, nWidth, nHeight);
    HBITMAP hBmpOld = (HBITMAP)::SelectObject(hMemDC, hBmp);
    ...................................
    你的操作
    ...................................
    ::BitBlt(hDC, 0, 0, nWidth, nHeight, hMemDC, 0, 0, SRCCOPY);
    ::SelectObject(hMemDC, hBmpOld);
    ::DeleteObject(hBmp);::DeleteObject(hMemDC);
    ::ReleaseDC(your hWnd, hDC);