void CTTTDlg::OnRButtonDown(UINT nFlags, CPoint point) 
{
// TODO: Add your message handler code here and/or call default
CDC *dc = GetDC();
GetCursorPos(&point);
dc->Ellipse(CRect(point.x,point.y,point.x+20,point.y+20));
CDialog::OnRButtonDown(nFlags, point);
}

解决方案 »

  1.   

    //设置成员BOOL m_bRButtonDown;
    //       CPoint m_ptRButtonDown;OnInitDialog()里m_bRButtonDown = FALSE;void CTTTDlg::OnRButtonDown(UINT nFlags, CPoint point)  
    {
    // TODO: Add your message handler code here and/or call default
    m_bRButtonDown = TRUE;
    m_ptRButtonDown = point;
    Invalidate();
    CDialog::OnRButtonDown(nFlags, point);
    }//绘图应该放到OnPaint()
    void CTTTDlg::OnPaint()
    {
    //...if (m_bRButtonDown)
    {
    dc.Ellipse(CRect(m_ptRButtonDown.x,m_ptRButtonDown.y,m_ptRButtonDown.x+20,m_ptRButtonDown.y+20));
    }
    //...
    }
      

  2.   


    形参里已经有point这个参数,直接用他即可