我将该控件的属性设为白色,然后再对话框中添加虚函数onupdate,在其中写入如下代码:
 CTransformAndClip_2D_lshDoc* pDoc =(CTransformAndClip_2D_lshDoc*) GetDocument();
ASSERT_VALID(pDoc);
CRect dcRect;
CStatic* viewPort =(CStatic *)GetDlgItem(IDC_VIEWPORT); viewPort->GetClientRect(&dcRect); 
CDC *viewPortDC = viewPort->GetDC();  // Clear BackGround of DC
    CBrush brBlack(RGB(0, 0, 0));//这里已经将背景色设为黑色。
    viewPortDC->FillRect(dcRect, &brBlack);
可是运行的时候,框内的颜色仍然是白色,怎么办?

解决方案 »

  1.   

    onupdate是干什么的?你这段代码是在对话框内吗?问题没有讲清楚我试了一下,可以呀如果不行,Invalidate(),UpdateWindow()
    试一下
      

  2.   

    onupdate是对话框的一个虚函数,我加上的。picture控件在对话框上。这个对话框基于CFormView,
      

  3.   

    对话框中添加虚函数onupdate?InitDialog?
      

  4.   

    不对吗
    引用楼主 huazai434 的回复:
    我将该控件的属性设为白色,然后再对话框中添加虚函数onupdate,在其中写入如下代码: 
    CTransformAndClip_2D_lshDoc* pDoc =(CTransformAndClip_2D_lshDoc*) GetDocument(); 
    ASSERT_VALID(pDoc); 
    CRect dcRect; 
    CStatic* viewPort =(CStatic *)GetDlgItem(IDC_VIEWPORT); viewPort->GetClientRect(&dcRect); 
    CDC *viewPortDC = viewPort->GetDC(); // Clear BackGround of DC 
        CBrush brBlack(RGB(0, 0, 0));//这里已经将背景色设为黑色。 
        viewPortDC->FillRect(dcRect, &brBlack); 
    可是运行的时候,框内的颜色仍然是白色,怎么办? 
    对话框中添加虚函数onupdate?InitDialog?
      

  5.   

    就是把视图区分出两个子窗口,一个子窗口是个基于cformview的对话框,然后再上面加一个picture控件,并关联一个CDC类,用它在上面画图。