MapX中实现友好的交互

        MapX的标注,修改标注功能尽管都有,但都十分的难用,操作起来,用户体验非常糟糕。不光编程难以控制,操作起来也不方便:工具选择要不断的切换,移动图元十分不敏感。所以希望实现一种比较友好的交互。

        设想是这样的:默认状态,都是Pan工具,可以自由的移动地图,缩放功能放到缩略图这里就不考虑了。有一个标注开关,打开后,当在空白区域时,为标注功能。当在已存在图元上时,为移动功能。只有在标注状态下,在图元上单击左键,才进入标注移动状态。标注移动一旦结束,就返回到标注状态。

实现:
当前图元设定:只要鼠标移动到图元上方,该图元即为当前图元,移开后当前图元清空
状态设定:1-浏览;2-正在移动图元;3-标注

默认:Pan工具
鼠标按下:
    存在当前图元,且状态=3:则进入图元的移动状态,状态=2;
    不存在当前图元,且状态=4:弹出标注的提示,进行标注;
鼠标移动:
    查找当前位置的图元
        找到图元,浏览状态(1):设置图元为当前图元
        找到图元,标注状态(3):设置图元为当前图元,修改图标为移动图标

        未找到图元,浏览状态(1):清除当前图元
        未找到图元,标注状态(3):清楚当前图元,还原图标为标注图标
鼠标弹起:
    存在当前图元,浏览状态(1): 正常的一些弹出操作,信息、关联菜单等。
    存在当前图元,移动状态(2):移动过程结束,还原到标注状态,状态=3    

 

posted @ 2008-05-18 14:36  jetz  阅读(810)  评论(0编辑  收藏  举报