void CwindowsMFCDlg::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
// 按下左键移动开始画图
if (nFlags == MK_LBUTTON)
{
CDC* pdcpic = m_picture.GetDC( ); // 获得DC
HDC m_hdc= pdcpic->m_hDC;
CRect rc2;
CWnd* pwnd2 = GetDlgItem ( IDC_PICTURE );
pwnd2->GetClientRect ( &rc2 ); // 获得IDC_ICTURE控件的客户区大小
pwnd2->MapWindowPoints ( this , &rc2 ); // 将坐标转换为对话框窗口的坐标
int oldRop=::SetROP2(m_hdc,R2_NOT);
// 画线
::MoveToEx(m_hdc,start.x-rc2.left,start.y-rc2.top, NULL);
::LineTo(m_hdc, old.x-rc2.left,old.y-rc2.top);
::MoveToEx(m_hdc, start.x-rc2.left, start.y-rc2.top, NULL);
::LineTo(m_hdc, point.x-rc2.left, point.y-rc2.top);
old = point;
}
CDialog::OnMouseMove(nFlags, point);
}
MFC-在Picture控件中画橡皮筋线
最新推荐文章于 2021-05-25 13:17:48 发布