我想实现:鼠标在移动了一段偏移后,就不再动了。
请问如何做?

解决方案 »

  1.   

    WM_MOUSEMOVE响应函数中,判断鼠标位置,如果移出了规定区域,立即移回来。
    最好先SetCapture()
      

  2.   

    在一个固定尺寸的对话框上画了张图片,图片上有一个小方块
    我想实现的时候:鼠标在图片上按下后,不送,可以拖动图片,方便看图片的其他位置。这步实现了,但小方块有问题
    因为必须同步,而且图片和方块是分开画的,所以移动了图片后,还要计算小方块的位置。
    但问题是,当图片移动到头不能移动的时候,小方块还是会变。
    这是因为,小方块的位置坐标是通过鼠标偏移量(加红部分)来求的:
    pt.x = GetStartPos(x, y, point, false, 0).x - dWidthR * (m_ptMoveCurrent.x - m_ptMoveStart.x);
    pt.y = GetStartPos(x, y, point, false, 0).y - dHeightR * (m_ptMoveCurrent.y - m_ptMoveStart.y);
    请问怎么做才能实现,当图片移动到头的时候,小方块就停那也不动了。
      

  3.   

    用clipcursor将光标限制在一个小区域内?