私はOKの質問に言いましたことを願っています。Flexで現在のコンポーネントのインライン関数を呼び出すときに 'self'または 'this'を渡す方法はありますか?
コンポーネントの 'id'を渡すことができますが、もっと一般的な方法があるかどうかはわかります。私は 'this'を使用しようとしましたが(下記の例を参照してください)、 'this'キーワードはアプリケーションを参照しています。
例:
<mx:Button click="someFunc(this)"/>
そして、次の関数呼び出しが動作しない(それは間違っているタイプだと):
someFunc(comp : UIComponent) : void {
comp.label = 'Change label';
}
私は20個のコンポーネントを持っている場合は、私のことができるようにしたいのですが異なるコンポーネントに対して 'id'を使用せずに同じ関数を呼び出します。
方法はありますか?
。 'target'はwではありません'mouseChildren'が有効になっている場合は、そうでない可能性が高くなります。しかし、 'currentTarget'は、リスナーがアタッチされているコンポーネントであることが保証されています。 – merv
ボタンコンポーネントは例として実際に使用されました。それは、私が「これ」または「自己」を使用したいと思っていたコンポーネントにとって、より多くのものでした。私はいつもイベントハンドラのtargetとcurrentTargetの変数を忘れています...これはFlexで 'this'または 'self'に最も近いと思います。ちょっとしたメモ...私は常に、event.targetまたはevent.currentTargetをいつ使うのか混乱しています! 回答ありがとうございます@Flextras.com –
@merv入力していただきありがとうございます。はい、event.currentTargetは機能します。 –