编写一个单文档应用程序,程序启动后在用户区显示一个方形,当用鼠标左键单击用户区后,该方形会变成圆形,如果再单击则又变回方形
程序设计思想:
设置一个开关变量m_bKey ,当其值为false 时,在OnDraw函数里绘制一个矩形,当其值为true时,在OnDraw函数里绘制一个圆形;
再定义一个成员变量m_brectRec存储矩形和圆形的尺寸
代码如下:
1.在视图View类里声明变量
public:
bool m_bKey;
CRect m_brectRec;
2.在视图类的构造函数中对成员变量初始化
CRec_CrlView : : CRec_CrlView( ) : m_brectRec( 100 , 100 , 400 , 400 )
{
m_bKey = false;
}
3.在视图类的OnLButtonDown函数中添加代码:
void CRec_CrlView :: OnLButtonDown( UINT nFlags , CPoint point )
{
if( m_bKey )
m_bKey = false;
else
m_bKey = true;
InvalidateRect( m_brectRec );
CView :: OnLButtonDown( nFlags , point );
}
4.在视图类的OnDraw函数中添加代码:
void CRec_CrlView :: OnDraw( CDC *pDC )
{
CRec_CrlView *pDoc = GetDocument();
ASSERT_VALID( pDoc );
if( m_bKey )
pDC->Ellipse( m_brectRec );
else
pDC->Rectangle( m_brectRec );
}