在一个有图片背景的view上移动另一个图片,图片怎么会"飞来飞去" ,而不是随着鼠标的移动而移动.
void CShowDIBView::OnDraw(CDC* pDC)
{
CShowDIBDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
m_Dib.SetPalette( pDC );
m_Dib.Draw( pDC, mLeftTopPoint.x, mLeftTopPoint.y,100, 100 );}
void CShowDIBView::OnLButtonDown(UINT nFlags, CPoint point) 
{
if(mDibRect.PtInRect(point))
{ isLButtonDown = true;
mStartPoint = point;
}
CView::OnLButtonDown(nFlags, point);
}
void CShowDIBView::OnLButtonUp(UINT nFlags, CPoint point) 
{
isLButtonDown = false;
CView::OnLButtonUp(nFlags, point);
}
void CShowDIBView::OnMouseMove(UINT nFlags, CPoint point) 
{
if(isLButtonDown)
{
mEndPoint = point;
int tCx = mEndPoint.x - mStartPoint.x;//偏移量
int tCy= mEndPoint.y - mStartPoint.y;
mLeftTopPoint.x += tCx;
         mLeftTopPoint.y += tCy;
mDibRect.left = mLeftTopPoint.x;    //图片所在区域
mDibRect.top = mLeftTopPoint.y;
mDibRect.right = mLeftTopPoint.x + 100;
mDibRect.bottom = mLeftTopPoint.y +100;
Invalidate();
}
CView::OnMouseMove(nFlags, point);
}