我想弹出一个window,四个角都是圆角,请问怎么做?

解决方案 »

  1.   

    http://community.csdn.net/Expert/TopicView3.asp?id=5410358
      

  2.   

    void CMainFrame::OnSize(UINT nType, int cx, int cy) 
    {
    CFrameWnd::OnSize(nType, cx, cy);
    // TODO: Add your message handler code here
    CRgn m_rgn;
    CRect rc;              
    GetWindowRect(&rc);      
    rc -= rc.TopLeft();

    m_rgn.CreateRoundRectRgn(rc.left,rc.top,rc.right,rc.bottom,300,300);    
    SetWindowRgn(m_rgn,TRUE); 


    }
      

  3.   

    HRGN hRgnR = CreateRoundRectRgn(0,0,Width,Height,20,20);
      SetWindowRgn(Handle,hRgnR,true);
    用这二个API就可以了
      

  4.   

    谢谢gofqjyie,
    但是还是有个问题,rc -= rc.TopLeft();这行语句有什么作用,为什么去掉它窗口会发生奇怪的现象,
    还有就是圆角窗体的四周变得很难看了,和原来的窗体不一样了,这是为什么