我想实现棋盘中实现类似有画图工具中的捕捉功能,当鼠标移动到某范围,那距离它较近的点会出现一个棋子大小的圈提示棋子会下在这里,如何实现?
是不是要每一点都存在数组内,然后设定范围,再判断鼠标的x,y,再实现局部刷新。
有没有具体的实现方法告诉一下小弟?特别是局部刷新部分。
谢谢!

解决方案 »

  1.   

    你给每个棋子都规定一个有效的RECT, 可以使用函数 PtInRect() 来判断当前的鼠标点是否在这个RECT中,从而实现捕捉。这个RECT可以比实际的棋子大
      

  2.   

    局部刷新部分怎样实现?可以具体告诉我在哪里写吗?
    还有已下的棋子记下后,使整个view刷新还是局部刷?
    鼠标移动的捕捉和下棋的刷新要注意什么问题?可以具体告诉一下我吗?
    谢谢!
      

  3.   

    局部刷新部分怎样实现 :  InvalidateRect( ... )可以实现。