http://album.hi.csdn.net/views/photo/256485
实现的功能就是鼠标在圆圈内才进行查询每个圆圈都是自己的编号就跟校友录里面的中国地图显示省名移动到到位置 查询学校一样 我现在就想用c/s来实现  

解决方案 »

  1.   

    两个思路:
    1、因为圆圈的排列是规则的,所以可以通过鼠标的位置来计算到底停在哪个圆圈上。
    2、使用GraphicPath类先描绘出外框,然后再用其IsOutlineVisible方法来测试在哪个圆圈里。
      

  2.   

    每个圈用一个独立的object不行么?
      

  3.   

    blog.csdn.net/dunao
    你可以参考下这个程序 !
      

  4.   

    写Circle类,每个圆圈对应一个实例。
      

  5.   

                
                e.Graphics.DrawEllipse(Pens.Black, 10, 10, 10, 10);
                GraphicsPath gp = new GraphicsPath();
                gp.AddEllipse(10, 10, 10, 10);
                if(gp.IsVisible(15, 15, e.Graphics))
                {
                    //在圈圈内
                  }
                else 
                {
                    //不在圈圈内
                  }
      

  6.   

    热图是B/S里的,C/S没有这个功能~!
      

  7.   

    您好像没有设PANEL 上的坐标和鼠标的坐标 您只是写了判断是否圆的中心位置哦   即使鼠标到了圆上也没法触发事件啊 设想 一下 圆有X轴 和 Y轴 在上半轴上和下半轴上 在进行判断 设一个范围 就可以了  就是说怎么实现 判断每一个点的时候有点难了因为坐标位置不一样,每个圆上都有数查询的时候要对应起来~!大家继续研究~!
      

  8.   

    c/s就架构的,不是B/S的 没有写过自定义控件可以考虑