Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Выравнивание элементов по ширине? (http://www.flasher.ru/forum/showthread.php?t=175033)

pas.delger 08.02.2012 13:18

Выравнивание элементов по ширине?
 
Привет!

Подскажите, пожалуйста, как выровнять элементы в контейнере по его ширине? Ну то есть контейнер резиновый, нужно что бы расстояния между кнопками в нем менялось в зависимости от его ширины. Есть ли такая настройка, или скриптом придется?

alatar 08.02.2012 13:51

Какой контейнер mx или spark?

Genzo 08.02.2012 13:55

Используйте в координатах % или bindable координаты например так :
Код AS3:

<mx:Canvas id = "container">
<mx:Button id="btn" x="{(container.width - btn.width) / 2}">
</mx:Canvas>


pas.delger 08.02.2012 15:08

спасибо, а для spark-а может можно проще?

Genzo 08.02.2012 15:28

Вы можете включить автоматическое выравнивание, но его сложнее контролировать.
Код AS3:

<s:VGroup horizontalAlign="center" width="100%">
        <s:Button label="Ok"/>
</s:VGroup>


alatar 08.02.2012 15:37

Для spark пишется свой layout (HarizontalLayout не поддерживает "резиновый" gap). Для mx проще написать свой контейнер или выравнивать извне. Такой лапши x="{(container.width - btn.width) / 2}" лучше избегать, работает медленно и не читается, сами потом в своем коде запутаетесь, ну и пихать это для каждого элемента занятие не из увлекательных.

Dimitry_II 09.02.2012 16:39

Я как-то пользовался элементами s:Spacer между всеми кнопками: для всех указывал ширину в 100%. При изменении ширины контейнера кнопки корректно меняли свое положение, оставаясь воровнянными по ширине.


Часовой пояс GMT +4, время: 05:40.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.