vs2008 MFC 画线
1.打开项目的类视图
2.右击CxxView,添加消息
3.编辑回调函数(过程函数)
4.添加CPoint类,用以保存鼠标的初始位置
void CDrawView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
m_ptOrigin=point; // m_ptOrigin是全局变量用以保存初始点
CView::OnLButtonDown(nFlags, point);
}
void CDrawView::OnLButtonUp(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
/*HDC hdc;
hdc=::GetDC(m_hWnd); //得到当前view的句柄
MoveToEx(hdc, m_ptOrigin.x, m_ptOrigin.y, NULL );
LineTo(hdc, point.x ,point.y );
::ReleaseDC(m_hWnd,hdc); */ //必须释放dc句柄(方法1)
CDC *cdc=GetDC();(方法二)
cdc->MoveTo(m_ptOrigin);
cdc->LineTo( point);
ReleaseDC(cdc);
CClientDC dc(this);(方法三)
dc.MoveTo(m_ptOrigin);
dc.LineTo(point);
画笔:
CPen pen(PS_SOLTD,1,RGB(255.0.0));
CPen *pOLDPen=dc.SelectObject(&pen);
dc.SelectObject(pOLDPEN);
CView::OnLButtonUp(nFlags, point);
}