程序是MFC
点一下按钮。如何 恢复原来的 矩形窗体啊!!!!

解决方案 »

  1.   

    按钮时间里 点击  调用 SetWindowRgn 没反应。。依然是个不规则窗体!!
      

  2.   


    我也觉得。。onPaint一直在调用。。事件里改变rgn  根本没反应 感觉
    那如何处理 
      

  3.   

    我在EraseBckGround中画:
    if(m_bRestore)
    {
    Crect rc;
    GetClientRect(&rc);
    HRGN hrgn=CreateRectRgn(rc.left,rc.top,rc.right,rc.bottom);
    SetWindowRgn(hrgn);
    }
    // 接着画 位图。
      

  4.   

    我遇到的情况是这样的:首先我改成 矩形,点击后改成 圆形, 再点击后改成矩形,之后就一直是矩形了。SetWindowRgn(cycle,TRUE);返回0表示错误,用GetLastError,返回6,表示句柄错误。十分不解
      

  5.   

    SetWindowRgn(cycle,TRUE);
    后系统占有这个句柄,你不能改,不能delete。
    要每次产生一个新句柄给系统。
      

  6.   

    果然是这样。所以,每次要用临时的CRgn就好了。