实验程序基于《visual v++面向对象程序编程教程》清华大学出版社 先是定义变量,在CMyDrawView头文件中 protected: HCURSOR m_hCross; bool m_bDragging; CPoint m_ptOrigin; 再在构造函数中初始化变量 m_bDragging = false; m_hCross = AfxGetApp()->LoadStandardCursor(IDC_CROSS); 在view类中定义如下函数: void CMyDrawView::OnLButtonDown(UINT nFlags, CPoint point) { SetCapture(); ::SetCursor(m_hCross); m_ptOrigin = point; m_bDragging = true; // CView::OnLButtonDown(nFlags, point); } void CMyDrawView::OnMouseMove(UINT nFlags, CPoint point) { if (m_bDragging) { CMyDrawDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); pDoc->AddLine(m_ptOrigin,point); CClientDC dc(this); dc.MoveTo(m_ptOrigin); dc.LineTo(point); m_ptOrigin = point; } // CView::OnMouseMove(nFlags, point); }