Flex - процентная высота - PullRequest
       16

Flex - процентная высота

0 голосов
/ 11 марта 2011

Как я могу ограничить размер дочернего контейнера с процентной шириной / высотой 100%?

Пример:

<mx:HBox id="container" width="100%" height="100%">
    <mx:HBox id="scrollContainer" width="100%" height="100%">
        <!-- keep this content limited to the size of "container" -->
        <!-- I also want to use the scollers from "scrollContainer" -->
    </mx:HBox>
</mx:HBox>

В настоящее время содержимое внутри scrollContainer будет переполнено, как только оно станет больше, чем «контейнер»

EDIT

По-видимому, я могу получить желаемое поведение, если поменяю HBox на Canvas, но мне все равно хотелось бы знать, как этого добиться с помощью HBox и чем он отличается от Canvas.

Ответы [ 3 ]

0 голосов
/ 12 марта 2011

атрибуты maxHeight, maxWidth

И чтобы ответить на другой ваш вопрос.Canvas - абсолютное позиционирование детей для объектов, обозначающих X и YHBox, VBox - позиционирование детей основано на родителе (HBox, VBox). С помощью HBox, VBox, если вы установите x или y для дочернего элемента, вы не заметите никаких изменений, родитель переопределит его.

0 голосов
/ 07 апреля 2011

Я думаю, вы должны сделать это, установив ширину следующим образом:

<mx:HBox id="container" width="100%" height="100%">
    <mx:HBox id="scrollContainer" width="{container.width}" height="{container.height}">
        <!-- keep this content limited to the size of "container" -->
        <!-- I also want to use the scollers from "scrollContainer" -->
    </mx:HBox>
</mx:HBox>
0 голосов
/ 11 марта 2011

Возможно, вы сможете сделать это, если для параметра verticalScrollPolicy и horizontalScrollPolicy на внешнем HBox установлено значение «off».Такого рода вещи лучше всего делать с одним верхним уровнем HBox - существуют HBox, которые обеспечивают горизонтальную компоновку для ваших элементов управления, поэтому вложение одного в другое на 100% дает вам два уровня вложения без какой-либо функциональной разницы.

Ваше решение с Canvas звучит лучше, чем то, о чем вы изначально мечтали, поскольку Canvas - более легкий элемент управления, хотя он по-прежнему ничего не делает для вас, если вы нетам нет другого подчиненного элемента управления.

...