2013-03-27 4 views
0

моего главного приложения MXML Я использую вкладку штурман, я могу получить доступ к этой вкладке навигатору в любом месте приложения по следующему коду ..Доступ к вкладке навигатора и его ребенка от дочернего элемента

mx.core.FlexGlobals. topLevelApplication.menuOption.selectedIndex = 0;

Теперь моя проблема в том, что я использовал панель кнопок переключения в транзакцииUI, которая является дочерним элементом навигатора вкладок, как я могу получить доступ к этому элементу, как вышеупомянутый код?

Моего главная вкладка MXML навигатор ::

<mx:TabNavigator left="10" top="20" bottom="10" right="10" id="menuOption" > 

    <ui1:homeUI label="Home" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 

    <ui1:transactionUI label="Transaction" width="100%" height="100%" backgroundColor="#373737" />  

     <ui1:calanderUI label="Employee service" width="100%" height="100%" horizontalCenter="0" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 
     <ui1:ManagementUI label="Management" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 
     <ui1:reportUI label="Reports" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 

     <ui1:admin label="Admin" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 

    </mx:TabNavigator> 

В моем основном приложении MXML Я использую вкладку штурман, я могу получить доступ к этой вкладке навигатора в любом месте приложения, следующий код ..

Размер файла:

Теперь моя проблема в том, что я использовал панель кнопок переключения в транзакцииUI, которая является дочерним элементом навигатора вкладок, как я могу получить доступ к этому элементу, как вышеупомянутый код?

Моя главная вкладка MXML навигатор ::

<ui1:homeUI label="Home" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 

<ui1:transactionUI label="Transaction" width="100%" height="100%" backgroundColor="#373737" />  

    <ui1:calanderUI label="Employee service" width="100%" height="100%" horizontalCenter="0" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 
    <ui1:ManagementUI label="Management" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 
    <ui1:reportUI label="Reports" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 

    <ui1:admin label="Admin" width="100%" height="100%" backgroundColor="#373737" chromeColor="#181818" contentBackgroundColor="#181818" color="#FDFDFD" /> 

</mx:TabNavigator> 

* Мой тумблер бар внутри transactionUI :: *

<s:NavigatorContent xmlns:fx="http://ns.adobe.com/mxml/2009" 
       xmlns:s="library://ns.adobe.com/flex/spark" 
       xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%" 
       xmlns:ui="com.colan.*" xmlns:ui1="com.colan.ui.*" 
       backgroundColor="#373737" chromeColor="#181818" 
       contentBackgroundColor="#181818" color="#FDFDFD"> 
<fx:Declarations> 
    <!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 
<fx:Script> 
    <![CDATA[ 

     import mx.collections.*; 
     import mx.core.*; 
    ]]> 
</fx:Script> 
<mx:VBox horizontalAlign="center" verticalAlign="middle" width="100%" height="100%"> 

    <mx:HBox horizontalAlign="center" verticalAlign="middle" width="100%" height="15%" > 

     <mx:ToggleButtonBar id="toggleButtonBar" 
          dataProvider="{viewStack}"  
          selectedButtonTextStyleName="mySelectedButtonTextStyleName" 
          /> 


    </mx:HBox> 
    <mx:HBox horizontalAlign="center" verticalAlign="middle" width="100%" height="85%" > 


     <mx:ViewStack id="viewStack"     
         visible="{toggleButtonBar.selectedIndex > -1}" width="100%" height="100%" > 

      <ui1:transaction label="Transaction"/> 
      <ui1:addClient label="Add Client"/> 
      <ui1:invoice label="Make invoice"/> 
      <ui1:workCatalogue label="Work catalogue"/> 
      <ui1:productCataloge label="Products Categories"/> 

      <ui1:suppliers label="Offers"/> 
      <ui1:calendarPlanUI label="Calendar"/> 


     </mx:ViewStack> 
    </mx:HBox> 
</mx:VBox> 

Пожалуйста, мне советы ...

+1

Помогает ли это: http://www.flextras.com/blog/index.cfm/2013/2/1/How-does-one-Flex-Component-talk-to-another-Flex-Component – JeffryHouser

ответ

0

((mx.core.FlexGlobals.topLevelApplication.menuOption) .getChildAt (1) as transactionUI) .toggleButtonBar

Хотя это грубо, но помогает вам двигаться. Не тестировали.

Смежные вопросы