本人自学winform编程  目前试着中国象棋的编写
但是参考了一些书籍和相关的鼠标技术的书 还是无法实现 鼠标托拉控件的效果。
下面我说说我想要得效果  
假如我用一个pictureBox的控件来做棋子 我如何让这个控件的location坐标等于鼠标的e.X e.Y呢?
假如设置一个布尔值 kai=false;
当MouseDown后kai=true;
然后MouseMove事件下面
Point p=tihs.pictureBox.Location;//声明棋子坐标
if(kai)//当我按下要走的棋子
{
    p=new Point(e.X,e.Y);//伪代码  如何让我的棋子随着鼠标的移动而移动呢?

解决方案 »

  1.   

    e.x e.y 是相对坐标..也可以看成是PICTUREBOX里的坐标.. 这里是需要转换成窗体坐标的最简单的办法通过Cursor 转换为窗体坐标.
    Point _MousePoint = this.PointToClient(Cursor.Position);你可以参考
    http://blog.csdn.net/zgke/archive/2009/01/06/3718989.aspx
      

  2.   

    http://blog.csdn.net/zgke/archive/2009/01/06/3718989.aspx
    查考这篇文章
      

  3.   


    tihs.pictureBox.Location=new Point(e.X,e.Y);
      

  4.   

    做象棋不容易的哦,还要精通算法..
    超级大笨狼用c#写了个象棋,你可以去看看,
    Ajax象棋演示: 
    http://www.dullwolf.cn/Chess/ 代码下载: 
    http://www.dullwolf.cn/Chess.rar