![]() |
UI/ Контейнеры
Какие контейнеры лучше использовать в приложении с простым GUI? Хочу на их базе сверстать Header, Content, Footer. Что бы можно было менять их свойства типа BackgroudColor, BorderColor и чтобы контролы внутри них имели относительные контейнера размеры. Например, изменил размер хедера -> изменилось расположение кнопки.
начал писать свой класс, но может есть что-то готовое уже? да и не уверен я за свой контейнер.. Код AS3:
Код AS1/AS2:
Да и в таком случае, если я меняю цвет фона контейнера (через свойство базового класса), помимо перерисовки фона и рамки ещё заново перерасчитаются координаты кнопки. а это уже лишнее. Контролы должны перестраиваться только при изменении размера контейнера. Добавлено через 1 час 1 минуту можно разбить Init() на две функции. одна будет перерисовывать фон и рамку и вызываться при изменение любого свойства , а вторая виртуальная будет перестраивать контролы и вызываться только при изменении Height, Width. Работать будет, но может плюнуть и воспользоваться каким-нибудь готовым решением? |
Нужно реализовать что-то типа commitProperties и invalidate, как во Flex
Т.е. обновлять только те свойства, которые менялись. Это разумеется добавляет больше кода, но стоит того, если ради оптимизации. |
|
Цитата:
А если это игра - то забудьте про валидацию, не создавайте себе проблем, лучше вручную вызовите свойство UpdateSize() после добавления детей или если какой-то компонент должен занять больше/меньше пространства. Тупо меньше багов будет и времени меньше убъёте. Валидация будет мешеать воплощать то, что нарисовал диз. И с первого раза без опыта систему валидации нормальную не сделать. Самая нормальная валидация реализована во Flex, но и там оно бажит и требует очень хорошо себя знать при написании компонентов. А то что сделано в AsWing - это вообще тихий ужас - оно никогда нормально не обновляло размеры. Так что либо Flex - либо ручками. |
flex, там уже все написано
|
| Часовой пояс GMT +4, время: 01:20. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.