想用mfc做一个类似绘制uml的软件 一般uml软件里的比如类图中的 每个类(都是独立的单元)可以单独拖动来移动位置 请问这个功能有什么比较好的实现方式吗 请大家指教

解决方案 »

  1.   

    参考VC文档中的MFC示例DrawCLI。
      

  2.   

    对了,假如你说的是位图,那么。要是想精确地拾取位图,包围盒的办法并不好用。(包围盒主要用在磁性吸取上)
    我以前也问过这个问题,但是当时没好的答案,后来我自己想了个办法:
    问题:
    如何精确地拾取任意形状的图元?
    图元是一个中间镂空的任意形状的图片,鼠标只有落在图片上才拾取。只要不在图片上,(比如在镂空部分)那么就不去拾取。
    我的办法是:
    用图元对象保存位图,和位图的Rect(以后运算也可以)。如果鼠标点落在视图窗口上图元的包围盒(同Rect一样大)中,那么返回一个相对包围盒的坐标,用这个坐标去检查图元对象中的位图,看鼠标所在点的是否是白色(也就是透明色,镂空部分).
      

  3.   

    我的vs里没有drawcli 之前就知道有 但没找到 今天又花了很长时间终于找到了 研究了一下 一头雾水 一会接着看 帖子等会再结希望还有其他的声音
      

  4.   

    你的图片有个矩形位置,
    在左键定义一个CRectTracker把图片矩形传个这个
    做判断是点是否落在矩形内,如果是就
    然后调用其track函数就可以拖动
    返回成功后
    得到新的矩形
    就移动了
      

  5.   

    http://topic.csdn.net/u/20090304/17/707a6720-11a2-4053-b060-622186dda9d0.html
    找到其他关于该例子的帖子
    而且还有熟面孔 呵呵