16,472
社区成员
发帖
与我相关
我的任务
分享
void CCrossDrawer::OnMouseMove( UINT nFlag, CPoint pt, CView* pView )
{
::SetCursor(LoadCursor(0, MAKEINTRESOURCE(IDC_CROSS)));
pView->GetClientRect(&m_rectClient);
m_rectClient.NormalizeRect();
CClientDC dc(pView);
pView->OnPrepareDC(&dc);
CPen pen(PS_SOLID, 0, RGB(0,116,226));
CPen* pOldpen = dc.SelectObject(&pen);
int iOldRP2 = dc.SetROP2(R2_NOT);
if (m_ptPre.x != -999)
{
dc.BeginPath();
dc.MoveTo(CPoint(m_ptPre.x, m_rectClient.top));
dc.LineTo(CPoint(m_ptPre.x, m_rectClient.bottom));
dc.MoveTo(CPoint(m_rectClient.left, m_ptPre.y));
dc.LineTo(CPoint(m_rectClient.right, m_ptPre.y));
}
dc.BeginPath();
dc.MoveTo(CPoint(pt.x, m_rectClient.top));
dc.LineTo(CPoint(pt.x, m_rectClient.bottom));
dc.MoveTo(CPoint(m_rectClient.left, pt.y));
dc.LineTo(CPoint(m_rectClient.right, pt.y));
m_ptPre = pt;
dc.SetROP2(iOldRP2);
dc.SelectObject(pOldpen);
}