void CSuperEditView::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
// set initial DC state
CClientDC dc(this);
VERIFY(dc.SaveDC() != 0);
OnPrepareDC(&dc);
dc.DPtoLP(&point);
CMainFrame *pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CBCGPStatusBar *pStatus = (CBCGPStatusBar *)&pFrame->GetStatusBar();
CString state;
state.Format(_T("x=%d y=%d;X=%.0f Y=%.0f"), point.x, point.y,
((float)point.x)/GetScale(), ((float)point.y)/GetScale());
pStatus->SetPaneText(2,state);
//if (m_pPageView->PtInPageView(point))//c by zcl for out range ctrl
{
m_pPageView->OnMouseMove(this, &dc, nFlags, point);
}
VERIFY(dc.RestoreDC(-1));
CScrollView::OnMouseMove(nFlags, point);
}
本文介绍了一个C++ MFC应用程序中如何处理鼠标移动事件,并更新状态栏显示当前鼠标位置及其缩放后的坐标。代码展示了如何使用CClientDC进行绘图上下文的保存与恢复,以及如何调用特定控件的方法来响应鼠标移动。
375

被折叠的 条评论
为什么被折叠?



