2009-08-26 2 views
0

Этот вопрос похож на этот пост:Разместить кнопку «AddChild» в сетке пространство TabNavigator

«Переместить кнопку в сетке пространство вкладок TabNavigator в в Flex Builder.» Move Button into grid space of a TabNavigator's tabs in Flex Builder

но с небольшой разницей. Я хочу иметь кнопку, которая добавляет дочерний элемент (вкладку) в TabNavigator в пространстве сетки (проще с TabBar, но см. Ниже), но не будет блокировать вкладки, поскольку они распространяются к кнопке. Эту функциональность можно увидеть в каждом веб-браузере, который использует вкладки.

Кроме того, я бы хотел, чтобы кнопка прокрутки отображалась, если открыто слишком много вкладок и возможность закрыть вкладки. Я пробовал использовать SuperTabNavigator от Doug McCune, который предлагает большинство из этих функций, но он не предлагает кнопку addChild, которую я ищу.

Есть ли способ добавить эту кнопку addChild в пространство сетки или добавить функции из SuperTabNavigator в TabBar?

ответ

0

Этот класс будет делать трюк, за исключением прокрутки, когда слишком много вкладок.

<?xml version="1.0" encoding="utf-8"?> 
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml" width="500" height="400"> 
    <mx:HBox width="100%"> 
     <mx:TabBar dataProvider="{viewstack}"/> 
     <mx:Button label="+" width="35" click="addTab()"/> 
    </mx:HBox> 
    <mx:ViewStack height="100%" width="100%" id="viewstack"/> 
    <mx:Script> 
     <![CDATA[ 
      import mx.controls.Label; 
      import mx.containers.Panel; 
      //add a new container 
      private function addTab():void 
      { 
       var l:Label = new Label(); 
       l.text = "Panel " + (viewstack.numChildren + 1); 
       var p:Panel = new Panel(); 
       p.label = l.text; 
       p.addChild(l); 
       viewstack.addChild(p); 
       viewstack.selectedChild = p; 
      } 
     ]]> 
    </mx:Script> 
</mx:VBox> 
Смежные вопросы