Flex 弹出窗口实现拖动

对于 Panel 和 它的继承类 如 Alert、TitleWindow 在

PopUpManager 管理弹出时,会将它的 isPopUp设置为 true ,Flex已经写好了拖动代码,

如果没有通过PopUpManager 弹出的 ,也可以手动将 isPopUp = true 也是可以拖动的。

而Canvas实现拖动也很简单,对stage 加 监听就可以了;

合理使用 startDrag和stopDrag这两个方法.一切OK.
以下是主要思路和代码:

    给 Canvas注册鼠标按下和松开事件,在事件里写方法.
      

     this.addEventListener(MouseEvent.MOUSE_UP,onMouseEventHandler);      
     this.addEventListener(MouseEvent.MOUSE_DOWN,onMouseEventHandler); 
     private function onMouseEventHandler(evt:MouseEvent):void 
      {
             switch (evt.type) 
             {
                 case "mouseDown" :
                        evt.currentTarget.startDrag();
                         break;
                 case "mouseUp" :
                         evt.currentTarget.stopDrag();                    
                         break;
                 default:
                    break;
             }
      }



至于要实现弹出窗口,就用PopUpManager了.

你可能感兴趣的:(Flex 弹出窗口实现拖动)