flex 呼出し元に合わせてコンポーネントの文字を変更
2011/07/14
コンポーネントの中の一部を呼出し元に合わせて変更したい。
コンポーネントの中で「script」で「set」を使う。
めも
コンポーネントのファイル名が「cpBorderContainer」の場合。
呼出し元
- <local:cpBorderContainer outputTitle="タイトル" />
※コンポーネントの「cpBorderContainer」の中にある「outputTitle」ってヤツに「タイトル」を引数として渡す
呼出し先(コンポーネント)
- <?xml version="1.0" encoding="utf−8"?>
- <s:BorderContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
- xmlns:s="library://ns.adobe.com/flex/spark"
- xmlns:mx="library://ns.adobe.com/flex/mx">
- <fx:Script>
- <![CDATA[
- [Bindable] private var _txt:String = "";
- public function set outputTitle(text:String):void
- {
- _txt = text;
- }
- ]]>
- </fx:Script>
- <fx:Declarations>
- <!−− 非ビジュアルエレメント (サービス、値オブジェクトなど) をここに配置 −−>
- </fx:Declarations>
- <mx:Text text="{_txt}" />
- </s:BorderContainer>
※レンダリングの順番の絡みでエラーになることがあるので「[Bindable] private var _txt」を使う。
※「mx:Text」に「_txt」の値を出力する