我现在想用鼠标选中一个圆,然后拖动这个圆,我用CClientDC画图,请问如何实现呢?另外,在vc里面可以:positioin[x]=...其中position[]是一个数组,也就是数组的下标可以是变量吗?小弟初学,多谢各位,解决给份!!

解决方案 »

  1.   

    CRgn::PtInRegion然后就是处理Drag,计算move了多少,然后重画
      

  2.   

    :(
    下表可以变选中图形,在图形程序里面叫做 pick。pick一般通过计算鼠标点是否落在图形之上来实现的。鼠标是否落在圆弧上,可以通过判断鼠标点和圆心的距离是否是R。当然啦,应该考虑tolerance。dist = VectorLength(P1-center);
    if(fabs(dist - R)<tolerance)
    {
    ... 在圆弧上
    }============================================================================
    http://www.betajin.com/alphasun/index.htm
    DocWizard C++程序文档自动生成工具 | Wave OpenGL 水波与动模拟和显示