宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应

[AS3]AS3中的拖动,as3移动拖动的应用示例

2016-10-13 00:16:48 点击量:16 标签: 收藏本文

比如我们需要在一个类(CFriendListPanel)里面希望拖动某个面板,我们直接在这个类设置完资源后,添加如下代码:

设定UI上的拖动区域,假设我们设定头部一定区域,定义一个m_rectHead:

  1. m_rectHead.left = 2
  2. m_rectHead.top = 2
  3. m_rectHead.bottom = 35
  4. m_rectHead.right = 200


对类注册鼠标事件:

  1. this.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown);//拖动 
  2. this.addEventListener(MouseEvent.MOUSE_UP,onMouseUp); 

编写鼠标事件响应函数:

  1. private function onMouseDown(evt:MouseEvent):void 
  2.   { 
  3.    m_pos.x = evt.localX; 
  4.    m_pos.y = evt.localY; 
  5.    parent.setChildIndex(this, parent.numChildren-1); 
  6.    if(m_rect.containsPoint(m_pos)) 
  7.    { 
  8.     this.startDrag(); 
  9.    } 
  10.   } 
  11.   private function onMouseUp(evt:MouseEvent):void 
  12.   { 
  13.    this.stopDrag(); 
  14.   }