|
|
|||||
Регистрация: Sep 2008
Сообщений: 6
|
TabNavigator активная вкладка
Когда загружается TabNavigator, то по умолчанию активизируется первая вкладка, и на нее кликнуть уже нельзя пока не перейдешь на другую вкладку.
Можно ли как то ее отключить, что бы при загрузке навигатора все вкладки были не активны, после клика на одну из них активировались. Я делал через CSS закрашивая все вкладки одним цветом, активные и не активные, но этот вариант мне не подходит. |
|
|||||
Странная у вас задача. Т.е. вы хотите ничего не показывать пока пользователь не нажмет на таб? Тогда как же пользователь должен понять что от него требуется? По сути противоречит идеи TabNavigator (вы хоть раз видели чтоб в например в Виндовсе в окне все табы были неактивны?).
Зачем вам это нужно? |
|
|||||
Регистрация: Sep 2008
Сообщений: 6
|
я делаю сайт на платформе .Net, обычный веб сайт,
но верхнее меню сайта, не обычное, нужно его сделать на флексе и что бы можно было менюшки менять местами (драг и дроп) использовал для таких целей гуглевовские контролы http://code.google.com/p/flexlib/ SuperTabBar, SuperTabNavigator они позволяют менять вкладки местами, у них точно такие же свойства как и у стандартных контролов TabBar и TabNavigator. Меню для сайта сделал без проблем, по событию click происходит переход на страницу сайта, все отлично, но когда в меню очень много вкладок, то оно получаеться очень длинное и бьет дизайн, возможно ли как то сделать перенос на новую строку вкладки ? Я искал в инете, не нашел ничего что могло бы мне помочь решить проблему. Попробывал решить ее добавив второй контрол, 2 контрола на сайте, и с обеих контролов можно перетаскивать вкладки на один и на второй контрол, но появилась проблема. Когда попадаешь на страницу сайта, активизируються первая вкладка в обеих контролах. Можно ли как то отключить по умолчанию активацию первой вкладки ? Возможно есть более правильный способ, если есть подскажите пожалуйста. |
|
|||||
Была слегка похожая задача. Но я делал собственный контрол на основе кнопок но в принципе можно на основе любого простого объекта. нужно чтоб по нажатию включался механизм драг/дроп а по отпусканию елемент менял стиль. У кнопок я ставил после нажатие состояние enable=false. единственная трудность это грамотно обеспечить перемещение.
Еще как вариант сделать область, где находятся табы со скролом. |
|
|||||
Регистрация: Sep 2008
Сообщений: 6
|
Попробывал пойти по твоему способу, сделать менюшки из кнопок.
А как грамотно обеспечить перемещение ? у меня та кнопка которую переношу, после перемещения отображаеться последней. <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:adobe="http://www.adobe.com/2006/fc"> <mx:Script> <![CDATA[ import mx.containers.Box; import mx.controls.Alert; import mx.managers.DragManager; import mx.core.DragSource; import mx.controls.Button; import mx.events.DragEvent; private function dragIt(event:MouseEvent, value:uint):void { var dragInitiator:Button = event.currentTarget as Button; var dragSource:DragSource = new DragSource(); dragSource.addData(value, 'value'); DragManager.doDrag(dragInitiator, dragSource, event); } private function dragEnterHandler(event:DragEvent):void { var dropTarget:Tile = event.currentTarget as Tile; //Alert.show("Drag&"); if (event.dragSource.hasFormat('value')) { DragManager.acceptDragDrop(dropTarget); } } private function dragCompleteHandler(event:DragEvent):void { var draggedBotton:Button = event.dragInitiator as Button; var dragInitBox:Tile = event.dragInitiator.parent as Tile; if (event.action == DragManager.MOVE) dragInitBox.removeChild(draggedBotton); dragInitBox.addChild(draggedBotton); } ]]> </mx:Script> <mx:Panel width="500" height="350" > <mx:Tile id="dragdrop" dragEnter="dragEnterHandler(event);" width="200"> <mx:Button label="test" mouseMove="dragIt(event, 1)" dragComplete="dragCompleteHandler(event);" /> <mx:Button label="test2" mouseMove="dragIt(event, 2)" dragComplete="dragCompleteHandler(event);" /> <mx:Button label="test3" mouseMove="dragIt(event, 3)" dragComplete="dragCompleteHandler(event);" /> <mx:Button label="test4" mouseMove="dragIt(event, 4)" dragComplete="dragCompleteHandler(event);" /> <mx:Button label="test5" mouseMove="dragIt(event, 5)" dragComplete="dragCompleteHandler(event);" /> <mx:Button label="test6" mouseMove="dragIt(event, 6)" dragComplete="dragCompleteHandler(event);" /> </mx:Tile> </mx:Panel> </mx:Application> |
Часовой пояс GMT +4, время: 13:59. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|