flex事件処理の秘密
1253 ワード
Adobe公式は三つのイベント処理の仕組みを提供しています。 MXMLにイベントハンドラ を登録する。 MXML定義にオンラインイベント処理プログラム を作成する。イベントモニタ は、アクションScriptにより登録されている。
詳細は:
http://www.adobe.com/cn/devnet/flex/quickstart/handling_events/
実は上の3つの処理メカニズムは原理的には一つの方法で処理されています。
採用しています アクションScript登録イベントモニターという最も原始的な方法は、他の方法は全部そのバリエーションです。
例えば:
詳細は:
http://www.adobe.com/cn/devnet/flex/quickstart/handling_events/
実は上の3つの処理メカニズムは原理的には一つの方法で処理されています。
採用しています アクションScript登録イベントモニターという最も原始的な方法は、他の方法は全部そのバリエーションです。
例えば:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<![CDATA[
private function clickHandler(event:MouseEvent):void {
// do something...
}
]]>
</mx:Script>
<mx:Button label="button" click="clickHandler(event)"/>
</mx:Application>
上記の方法はMXMLにイベントハンドラを登録してイベントを処理します。コンパイルするとmxmlファイルはasファイルを生成します。上のイベントハンドラを下記のように修正します。
public function __test_Button1_click(event:MouseEvent):void {
clickHandler(event);
}
カスタムのコールバック関数をflex内の本格的なコールバック関数に入れて処理し、イベントオブジェクトを転送します。test_Button 1_clickは本当にコールバック関数です。