| メソッド | プロパティ | エフェクト | イベント | スタイル | フレームあり | フレームなし |
直接の既知のサブクラス![]()
Container クラスは抽象基本クラスです。アプリケーションでは、Container のインスタンスを作成しません。代わりに、Container のサブクラス (Canvas や HBox など) の 1 つのインスタンスを作成します。
Container クラスには、ダイナミックなインスタンス化のロジック、リピーターに関連付けられたプロパティ、icon および label プロパティ、およびクリップマスクを作成するためのコードが含まれます。
MXML シンタックス
Container クラスは、親クラスのすべてのプロパティを継承し、次のプロパティを追加します。
<mx:tagname
autoLayout="true|false"
clipContent="true|false"
creationPolicy="auto|all|none"
defaultButton="No default."
hLineScrollSize="5"
hPageScrollSize="20"
hPosition="0"
hScrollPolicy="auto|on|off"
icon="No default."
vLineScrollSize="5"
vPageScrollSize="20"
vPosition="0"
vScrollPolicy="auto|on|off"
/>
| メソッド | |
| createChildren( )
: Voidこのコンテナの子であるコンポーネントを作成します。 |
| draw( )
: Void表示リストを更新します。 |
| executeChildBindings
データバインディング用の Flex Mix-in です。 |
| getViewMetrics( )
: Object4 つのプロパティを持つオブジェクトを返します。 |
| getViewMetricsAndMargins( )
: Object4 つのプロパティを持つオブジェクトを返します。 |
| init( )
: Void変数を初期化します。 |
| mx.core.UIComponent クラスから継承されるメソッド |
drawFocus getFocus getFocusManager setEnabled setFocus |
| プロパティ | |
| autoLayout:Boolean true の場合、子の位置またはサイズが変更されるたびに測定とレイアウトが実行されます。 |
| childDescriptors:Array
[読み取り専用]
MXML コンパイラによって生成される UIObjectDescriptors の配列です。 |
| className:Stringこのクラスの名前です。 |
| clipContent:Boolean このコンテナの子の位置やサイズが、このコンテナの境界線を超えるように変更された場合に、クリップマスクを適用するかどうかを指定します。 |
| creationIndex:Number コンテナの子をインスタンス化して描画する順序です。 |
| creationPolicy:Stringこのコンテナの子の作成に関するポリシーです。 |
| defaultButton:String コンテナのデフォルトボタンとして指定された Button コントロールの ID です。 |
| hLineScrollSize:Number水平スクロールバーの左または右矢印ボタンが押されたときに移動するピクセル数です。 |
| hPageScrollSize:Number水平スクロールバーのトラックが押されたときに移動するピクセル数です。 |
| hPosition:Number水平スクロールバーの現在の位置です。 |
| hScrollPolicy:String水平スクロールバーが常に表示されるか、常に非表示か、または必要に応じて自動的に追加されるかを指定します。 |
| icon:String このコンテナを表すために、一部のナビゲータコンテナによって表示されるアイコンのシンボル名です。 |
| label:String このコンテナを表すために、一部のナビゲータコンテナによって表示されるテキストです。 |
| maxHPosition:Number
[読み取り専用]
hPosition プロパティに可能な最大値です。 |
| maxVPosition:Number
[読み取り専用]
vPosition プロパティに可能な最大値です。 |
| numRepeaters:Number
[読み取り専用]
このコンテナに含まれる Repeater の数です。 |
static | version:Stringこのクラスのバージョンを表すストリングです。 |
| vLineScrollSize:Number垂直スクロールバーの上または下矢印ボタンが押されたときに移動するピクセル数です。 |
| vPageScrollSize:Number垂直スクロールバーのトラックが押されたときに移動するピクセル数です。 |
| vPosition:Number垂直スクロールバーの現在の位置です。 |
| vScrollPolicy:String垂直スクロールバーが常に表示されるか、常に非表示か、または必要に応じて自動的に追加されるかを指定します。 |
| mx.core.View クラスから継承されるプロパティ |
baselinePosition className numChildren version |
| mx.core.UIComponent クラスから継承されるプロパティ |
enabled errorString tabEnabled tabIndex version |
| エフェクト |
| mx.core.UIComponent クラスから継承されるエフェクト |
focusInEffect focusOutEffect |
| mx.core.UIObject クラスから継承されるエフェクト |
creationCompleteEffect hideEffect mouseDownEffect mouseOutEffect mouseOverEffect mouseUpEffect moveEffect resizeEffect showEffect |
| イベント | |
childrenCreated | コンテナが子を作成した後にブロードキャストします。
コンテナが最初に作成されたときは、子オブジェクトが作成された直後に このイベントがブロードキャストされた時点では、子オブジェクトは初期化されていますが、その幅と高さはまだ計算されておらず、まだ画面に描画されていません。子が完全に初期化されてレンダリングされたときに通知を受けるには、子の |
scroll | ユーザーが手動でコンテナをスクロールしたときにブロードキャストします。 イベントは、マウス (スクロールバーの下向きボタンをクリックしたときなど) またはキーボード (下矢印キーを押したときなど) によってスクロール位置が変更されたときにブロードキャストされます。ただし、このイベントは、スクロール位置がプログラムによって変更された場合はブロードキャストされません ( このイベントがブロードキャストされた時点では、スクロールバーは新しい位置に更新されていますが、コンテナの子オブジェクトは新しいスクロール位置を反映するようにシフトしていません。 このイベントオブジェクトには、次のプロパティが含まれます。- |
| mx.core.View クラスから継承されるイベント |
childCreated childDestroyed childIndexChanged |
| mx.core.UIComponent クラスから継承されるイベント |
focusIn focusOut invalid keyDown keyUp valid valueCommitted |
| スタイル |
| mx.core.UIObject クラスから継承されるスタイル |
color fontFamily fontSize fontStyle fontWeight horizontalGap leading marginLeft marginRight textAlign textDecoration textIndent verticalGap |
| メソッドの詳細 |
createChildren( )
: Void
super.createChildren() メソッドを呼び出す必要があります。
draw( )
: Void
UIObject.draw() メソッドを参照してください。Container.draw() メソッドは View.draw() を呼び出し、これによって現在のスクロール位置を反映するようにコンテナの子が更新されます。
executeChildBindings( )
データバインディング用の Flex Mix-in です。Container コンポーネントのすべての子 UIObject コンポーネントにすべてのバインディングを実行します。
getViewMetrics
getViewMetrics( )
: Object
top、bottom、left、および right の 4 つのプロパティを持つオブジェクトを返します。各プロパティの値は、コンテナの端の周囲にあるクロムの幅 (境界線の幅にスクロールバーの幅を加えた値) と同一です。コンテナの子の位置を決める際に他のクロムが考慮されるように、コンテナのサブクラスはこのメソッドをオーバーライドする必要があります。たとえば、Panel クラスの getViewMetrics() メソッドは、Panel コンテナのタイトルバーの太さを top プロパティで示しているオブジェクトを返す必要があります。
戻り値
左端、右端、上端、および下端の太さがピクセル数で指定されたオブジェクトです。
getViewMetricsAndMargins
getViewMetricsAndMargins( )
: Object
top、bottom、left、および right の 4 つのプロパティを持つオブジェクトを返します。各プロパティの値は、コンテナの端の周囲にあるクロムの幅 (境界線の幅にスクロールバーの幅を加えた値) に、オブジェクトのマージンの幅を加えた値と同一です。
戻り値
左端、右端、上端、および下端の太さがピクセル数で指定されたオブジェクトです。
init
init( )
: Void
変数を初期化します。このメソッドは、オブジェクトが最初に作成されたときに呼び出されます。サブクラスがこの関数をオーバーライドする場合は、Container.init のロジックが実行されるように、サブクラスが super.init() メソッドを呼び出す必要があります。
プロパティの詳細
autoLayout
autoLayout:Boolean
true の場合、子の位置またはサイズが変更されるたびに測定とレイアウトが実行されます。false の場合、測定とレイアウトは、子がコンテナに追加されたとき、またはコンテナから削除されたときに、一度だけ実行されます。デフォルト値は true です。 説明
Move エフェクトを使用する場合、移動するコンポーネントの周囲のレイアウトは、Move エフェクトがアニメーション化するものに収まるように再調整されません。コンテナの autoLayout プロパティを true に設定しても、この動作には影響しません。
autoLayout プロパティは、Accordion または ViewStack コンテナには適用されません。
childDescriptors
childDescriptors:Array [読み取り専用]
MXML コンパイラによって生成される UIObjectDescriptors の配列です。各 UIObjectDescriptor には、コンテナの MXML タグの、子 MXML タグの 1 つで指定される情報が含まれます。配列内での UIObjectDescriptors の順序は、子タグの順序と同一です。初期化時には、コンテナの子 UIObject とその Repeater を作成し、これらに MXML で指定された初期プロパティ値やイベントハンドラなどを与えるため、childDescriptors が使用されます。
className
className:String
このクラスの名前です。値は "Container" です。Container のサブクラスを作成した場合は、このフィールドをオーバライドして固有のクラス名を割り当てる必要があります。
clipContent
clipContent:Boolean
このコンテナの子の位置やサイズが、このコンテナの境界線を超えるように変更された場合に、クリップマスクを適用するかどうかを指定します。false の場合、このコンテナの子は、移動やサイズ変更によってこのコンテナの外部に出た場合も、表示されたままになります。true の場合、このコンテナの子は切り詰められます。デフォルト値は true です。clipContent が false の場合、このコンテナのスクロールが無効になり、スクロールバーが非表示になります。clipContent が true の場合、コンテナの子がコンテナの外部に拡張されると、通常はスクロールバーが表示されます。スクロールバーの表示の制御については、hScrollPolicy および vScrollPolicy を参照してください。
creationIndex
creationIndex:Number
コンテナの子をインスタンス化して描画する順序です。creationPolicy 属性を "キューに格納された" 値に設定する場合にのみ使用できます。それ以外の場合、この属性は無視されます。デフォルト値は undefined です。
creationPolicy
creationPolicy:String
このコンテナの子の作成に関するポリシーです。auto、all、queued、または none のいずれかの値を指定できます。コンテナに creationPolicy が指定されていない場合、そのコンテナは親の creationPolicy を継承します。アプリケーションに creationPolicy が指定されていない場合、デフォルトが auto になります。 creationPolicy が auto の場合、必要になるまでコンテナの子孫の作成が遅延されます (遅延インスタンス化)。このポリシーを使用した場合、最初に作成される UIObjects が少なくなるため、起動時間が最短になります。ただし、ユーザーがアプリケーションの別の部分にはじめて移動するとき、ナビゲーションの遅延が生じます。Accordion、TabNavigator、ViewStack などのナビゲータコンテナは、すべての子をただちに作成することによって auto ポリシーを実装しますが、ある子がそのナビゲータコンテナの選択された子になるまでは、その子のより深い子孫を作成しません。
creationPolicy が all である場合、子が選択されるまで待たずに、ナビゲータコンテナが各子のより深い子孫をただちに作成します。
VBox コンテナなどの単一ビューコンテナについては、auto ポリシーと all ポリシーの違いはありません。
creationPolicy が queued である場合、コンテナがただちにインスタンス化および描画されず、作成キューに追加されます。アプリケーションがキューに格納されたコンテナを処理すると、コンテナの子が作成されます。アプリケーションは、これらの子が作成されるまで、作成キュー内の次のコンテナに進みません。
creationPolicy が none である場合、コンテナが子を作成しません。この場合は、MXML 作成者が、createComponent() メソッドを呼び出すことによって子を作成します。
defaultButton
defaultButton:String
コンテナのデフォルトボタンとして指定された Button コントロールの ID です。コンテナ内のコントロールにフォーカスがあるときは、Enter キーを押すことと、この Button コントロールをクリックすることが同義です。
hLineScrollSize
hLineScrollSize:Number
水平スクロールバーの左または右矢印ボタンが押されたときに移動するピクセル数です。デフォルト値は 5 です。
hPageScrollSize
hPageScrollSize:Number
水平スクロールバーのトラックが押されたときに移動するピクセル数です。デフォルト値は 20 です。
hPosition
hPosition:Number
水平スクロールバーの現在の位置です。これは、スクロールバーサーフェスの左端と、現在表示されているサーフェスの左端部分の距離 (ピクセル単位) と同一です。デフォルト値は 0 です。
hScrollPolicy
hScrollPolicy:String
水平スクロールバーが常に表示されるか、常に非表示か、または必要に応じて自動的に追加されるかを指定します。有効な値は、on、off、および auto です。デフォルト値は auto です。
このプロパティは、ControlBar コンテナには適用されません。
hScrollPolicy が auto の場合、水平スクロールバーは、次のすべてが満たされるときに表示されます。
- コンテナの子の 1 つが、コンテナの左端または右端の外にはみ出しています。
- clipContent プロパティは true です。
- コンテナには、スクロールバーを表示するのに十分な幅および高さがあります。
icon
icon:String
このコンテナを表すために、一部のナビゲータコンテナによって表示されるアイコンのシンボル名です。たとえば、この Container が TabNavigator の子である場合、対応するタブにこのアイコンが表示されます。この Container が Accordion の子である場合、対応するヘッダにこのアイコンが表示されます。アイコンは、実行時にサーバーからイメージとしてダウンロードするのではなく、コンパイル時にユーザーのアプリケーションの SWF ファイル内のシンボルとして埋め込む必要があります。SWF ファイルにアイコンを埋め込むには、次の @Embed MXML コンパイラディレクティブを使用します。
icon="@Embed('relativeOrAbsoluteURL')"
URL は、サーバーの JPEG、GIF、PNG、SVG、または SWF イメージの URL を指定できます。MXML コンパイラにより、このイメージがシンボルとして埋め込まれ、@Embed ディレクティブが、コンパイラによって生成されたシンボル名によって置き換えられます。
label
label:String
このコンテナを表すために、一部のナビゲータコンテナによって表示されるテキストです。たとえば、この Container が TabNavigator の子である場合、対応するタブにこのストリングが表示されます。この Container が Accordion の子である場合、対応するヘッダにこのストリングが表示されます。
maxHPosition
maxHPosition:Number [読み取り専用]
hPosition プロパティに可能な最大値です。水平スクロールバーが存在しない場合、デフォルトは 0 です。
maxVPosition
maxVPosition:Number [読み取り専用]
vPosition プロパティに可能な最大値です。垂直スクロールバーが存在しない場合、デフォルトは 0 です。
numRepeaters
numRepeaters:Number [読み取り専用]
このコンテナに含まれる Repeater の数です。この数には、このコンテナの直接の子である Repeater と、他のリピーターの内部にネストされた Repeater が含まれます。次の例を考えます。
<mx:HBox>
<mx:Repeater dataProvider="[1, 2]">
<mx:Repeater dataProvider="...">
<mx:Button/>
</mx:Repeater>
</mx:Repeater>
<mx:HBox>
この例では、外部 Repeater が 1 つ、内部リピーターが 2 つであるため、HBox の numRepeaters プロパティが 3 に設定されます。
numRepeaters プロパティには、他のコンテナの内部にネストされたリピーターは含まれません。次の例を考えます。
<mx:HBox>
<mx:Repeater dataProvider="[1, 2]">
<mx:VBox>
<mx:Repeater dataProvider="...">
<mx:Button/>
</mx:Repeater>
</mx:VBox>
</mx:Repeater>
<mx:HBox>
この例では、外部リピーターが 1 つであるため、外部 HBox の numRepeaters プロパティが 1 に設定されます。各 VBox に 1 つの Repeater があるため、2 つの内部 VBox コンテナの numRepeaters プロパティも 1 に設定されます。
version
static version:String
このクラスのバージョンを表すストリングです。
vLineScrollSize
vLineScrollSize:Number
垂直スクロールバーの上または下矢印ボタンが押されたときに移動するピクセル数です。デフォルト値は 5 です。
vPageScrollSize
vPageScrollSize:Number
垂直スクロールバーのトラックが押されたときに移動するピクセル数です。デフォルト値は 20 です。
vPosition
vPosition:Number
垂直スクロールバーの現在の位置です。これは、スクロールバーサーフェスの上端と、現在表示されているサーフェスの上端部分の距離 (ピクセル単位) と同一です。デフォルト値は 0 です。
vScrollPolicy
vScrollPolicy:String
垂直スクロールバーが常に表示されるか、常に非表示か、または必要に応じて自動的に追加されるかを指定します。有効な値は、on、off、および auto です。デフォルト値は auto です。
このプロパティは、ControlBar コンテナには適用されません。
vScrollPolicy が auto の場合、垂直スクロールバーは、次のすべてが満たされるときに表示されます。
- コンテナの子の 1 つが、コンテナの上端または下端の外にはみ出しています。
- clipContent プロパティは true です。
- コンテナには、スクロールバーを表示するのに十分な幅および高さがあります。