私は、ビューのスタックでキャンバスに変更する配列でflexのコンボボックスを使用しようとしています。 カスタムアクションスクリプトでこれを行うことはできますか?私が設計しているUIが実際にこれに恩恵を与える可能性があります。ここでフレックス質問:Flexでコンボボックスを使用してビュースタックを変更することはできますか?
1
A
答えて
3
は、あなたがやろうとしているものを示して少しデモアプリケーションです:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Script>
<![CDATA[
import mx.core.Container;
private function onComboBoxChange():void
{
stackNav.selectedChild = this[comboNav.selectedItem];
}
]]>
</mx:Script>
<mx:ComboBox id="comboNav" dataProvider="{['canvas1','canvas2']}" change="onComboBoxChange()"/>
<mx:ViewStack id="stackNav" width="400" height="300">
<mx:Canvas id="canvas1" width="100%" height="100%">
<mx:Label text="Hello" horizontalCenter="0" verticalCenter="0"/>
</mx:Canvas>
<mx:Canvas id="canvas2" width="100%" height="100%">
<mx:Label text="World!" horizontalCenter="0" verticalCenter="0"/>
</mx:Canvas>
</mx:ViewStack>
</mx:Application>
あなたはonComboBoxChange内のロジックを(変更可能)のほかのselectedIndexを使用する:
stackNav.selectedIndex = comboNav.selectedIndex;
0
またはすることができますviewStackのselectedIndexをコンボのselectedIndexプロパティにバインドします。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:ComboBox id="comboNav" dataProvider="{['canvas1','canvas2']}"/>
<mx:ViewStack id="stackNav" width="400" height="300"
selectedIndex="{comboNav.selectedIndex}">
<mx:Canvas id="canvas1" width="100%" height="100%">
<mx:Label text="Hello" horizontalCenter="0" verticalCenter="0"/>
</mx:Canvas>
<mx:Canvas id="canvas2" width="100%" height="100%">
<mx:Label text="World!" horizontalCenter="0" verticalCenter="0"/>
</mx:Canvas>
</mx:ViewStack>
</mx:Application>
0
あなたは、このソリューションを使用することができますが、スペース と言葉をパイクすることができないことを警告すること(「キャンバス1」〜「canvas1」に変更してみてください)、あなたが表示されます。
[Bindable] private var models:Array = ["tasks","users","bugs"];
public function changeViewStackModel():void {
//this.modelViewStack.selectedChild=users; //works
//this.modelViewStack.selectedChild="users"; //does not work
//this.modelViewStack.selectedChild=this.modelsCombo.selectedItem; //does not work
switch(modelsCombo.selectedItem) {
case "tasks": modelViewStack.selectedChild=tasks; break;
case "users": modelViewStack.selectedChild=users; break;
case "bugs": modelViewStack.selectedChild=bugs; break;
}
}
MXMLコード:
<mx:ComboBox id="modelsCombo" dataProvider="{models}" selectedIndex="0"
change="changeViewStackModel()"/>
<mx:ViewStack x="29.25" y="55" id="modelViewStack" width="90%" height="200">
<mx:Canvas id="tasks" label="Tasks"><mx:Label text="Tasks stack view!!"/>
</mx:Canvas>
<mx:Canvas id="users" label="Users"><mx:Label text="Users stack view!!"/>
</mx:Canvas>
<mx:Canvas id="bugs" label="Bugs"><mx:Label text="Bugs stack view!!"/>
</mx:Canvas>
</mx:ViewStack>
関連する問題
- 1. フレックス質問:AIRまたはFlexで動作していますか?
- 2. AJAXを使用してクエリーセットを変更することはできますか?
- 3. powershellを使用してファイルエクスプローラビューを変更することはできますか?
- 4. flexで使用するswcでフラッシュをコンパイルします。フレックスで書かれたクラスを使用します。
- 5. タイムラインバナー - APIを使用して変更することはできますか?
- 6. この方法で形質を使用することはできますか?
- 7. GrailsでKotlinを使用することはできますか?この質問に私を導く
- 8. スプレッドシートスクリプトを変更して使用権限を変更することはできますか?
- 9. フレックス/アクションスクリプト質問
- 10. フレックスでdivをバウンスさせることはできますか?
- 11. FlexでVBoxをぼかすことはできますか?
- 12. Selenium Flexを使用してFlex Sparkコンポーネントを検出することができません
- 13. フレックス(パーサ)の質問
- 14. CSSを使用してこのHTML構造を変更することはできますか?
- 15. コンボボックスを使用してリストボックスを制御できますか?
- 16. SparkSQLを使用して更新することはできますか?
- 17. キュウリ+カピバラを使ってスタイルを変更することはできますか?
- 18. グーグルアプリスクリプトを使用してGoogle教室で学年を変更することはできますか
- 19. WPFを使用してC#でFormattedTextのTextOptionsを変更することはできますか?
- 20. アプリで1つのAndroid APKを使用してビルドバリアントを変更することはできますか?
- 21. プリズム内の委任コマンドを使用して質問を実行することができます
- 22. コンボボックスを使用してDatagridview Backgroungの色を変更するC#
- 23. Flex AppをWebsocketクライアントにすることはできますか?
- 24. データセットをコンボボックスのデータソースとして使用できるリストに変換する方法はありますか?
- 25. Ionic 2を使用して携帯電話とタブレットのレイアウトを変更することはできますか?
- 26. 現在のYoutube APIを使用してコメントにアクセスして変更することはできますか?
- 27. getterとsetterはmockito-flexを使用してmockedできますか?
- 28. Javaのインタフェースは、変数/ジェネリック型を入力として使用できますか?私はこの質問にこだわっている
- 29. PHPを使用してファイルへのパスをプログラムによって変更することはできますか?
- 30. Flex Builder 3でAS3プロジェクトの「デフォルトアプリケーション」クラスを変更することはできますか?
素晴らしい...これは動作します!助けてくれてありがとう!!! –