与CRect rect; 如何让rect的位置与CRect(1,1,166,52) 一样?

解决方案 »

  1.   

    rect.left = 1;
    rect.top = 1;
      

  2.   

    CRect rect; rect.TopLeft = CPoint(1,1);
    rect.BottomRight=CPoint(166,52);error C2659: '=' : overloaded function as left operand
    error C2659: '=' : overloaded function as left operand
      

  3.   

    CRect rect;
             rect.top=0;
    rect.left=0;
    rect.right=400;
    rect.bottom=400;

    CRect(0,0,400,400)
    相等吗?
      

  4.   


    pDC->GetClipBox(CRect(0,0,400,400)); pDC->FillRect(CRect(0,0,400,400),&brush)

    CRect rect
    rect.left=0;
    rect.top=0;
    rect.right=400;
    rect.bottom=400;
    pDC->GetClipBox(rect); pDC->FillRect(rect,&brush); 填充的背区域大小为什么不一样?
      

  5.   

    pDC->GetClipBox(rect);
    调试看看这句执行过之后,rect的值变了没
      

  6.   

    就是刷的时候把整个客户区域给刷了颜色rect 事实上仅仅是客户区域的很小一块阿
      

  7.   

    在MFC类库中都有拷贝构造函数和运算符重载,因此你直接用无名对象来拷贝你的rect就可以了。CRect rect; 
    rect = CRect(1,1,166,52);
      

  8.   


    CRect reRect; 
    reRect=CRect(0,0,400,400);  pDC->GetClipBox(reRect); pDC->FillRect(reRect,&brush); 

    pDC->GetClipBox(CRect(0,0,400,400)); pDC->FillRect(CRect(0,0,400,400),&brush); 
    不一样的结果.不知道怎么回事