(1)在菜单栏中添加绘图菜单,为其添加下拉菜单:点、直线、矩形、椭圆并添加命令相应函数。
(2)在view中添加UINT类型的m_ndrawtype变量并初始化为0,添加Cpoint类型的m_ptorigin变量也初始化为0。分别在点、直线、矩形、椭圆的命令相应函数函数中将m_ndrawtype付值为1、2、3、4。
(3) 在view中添加WM_LBUTTONDOWN和WM_LBUTTONUP函数,在WM_LBUTTONDOWN中编辑:m_ptorigin=point;
在WM_LBUTTONUP中编辑:
CClientDC dc(this);
CRect rect(m_ptorigin,point);
CPen pen;
pen.CreatePen(PS_SOLID, 2, RGB(255,0,0)); //创建红色画笔
dc.SelectObject(pen);
CBrush* pbrush=CBrush::FromHandle((HBRUSH)GetStockObjec(NULL_BRUSH)); //创建透明画刷;
dc.SelectObject(pbrush);
switch(m_ndrawtype)
{
case 1:
dc.SetPixel(m_ptorigin,RGB(255,0,0));
break;
case 2:
dc.MoveTo(m_ptorigin);
dc.LineTo(point);
break;
case 3:
dc.Rectangle(m_ptorigin.x,m_ptorigin.y,point.x,point.y);
break;
case 4:
dc.Ellipse(rect);
break;
}