如何捕获flex的DataGrid表格的默认事件

flex最常用的是表格组件DataGrid,但是如果要实现对表格的列宽,列顺序,以及列的隐藏属性就需要对表格的一些默认事件有所了解。

比如:

1)要设置表格某一列的宽度,就需要知道表格的DataGridEvent事件,DataGridEvent.COLUMN_STRETCH.COLUMN_STRETCH就是设置表格列宽度的事件type

2)要把某一列拖动到另一列的前面就需要了解IndexChangedEvent事件,IndexChangedEvent.HEADER_SHIFT.HEADER_SHIFT就是交换列的事件type

 

而然表格组件分发事件是不没设置冒泡的,如果要捕获该事件,就要在事件监听设置可以捕获,即useCapture=true,可以参考flex4.1的sdk,就明白了。

 

 public function addEventListener(type:String,
         listener:Function,
         useCapture:Boolean=false,
         priority:int=0,
         useWeakReference:Boolean=false):void
  {  }

 

当然如果自己定义事件,可以设置new SomeEvent时设置bubbles为true。(当然如果捕获时useCapture为true,就是取消冒泡阶段,只用捕获阶段)


public function SomeEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=true)
  {
   super(type,bubbles,cancelable);

  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值