Как правильно изменить текстовое содержимое в жизненном цикле компонента Flex? - PullRequest
0 голосов
/ 25 августа 2010

У меня есть пользовательские компоненты, которые должны корректировать свое текстовое содержимое в соответствии с ограничениями пространства. Например, компонент добавляет метки до тех пор, пока не останется свободного места, а затем содержимое последней метки станет "(х больше)" У меня нет доступа к размеру дочерних элементов управления до их добавления. Когда в updateDisplayList я делаю изменения в компоновке компонента, но для меток свойство lblInstance.text запускает события, которые приводят к повторному вызову updateDisplayList. Я знаю, что updateDisplayList может вызываться более одного раза, но если есть способ изменить текст без запуска событий, это было бы действительно полезно. Например, метод setActualSize в UIComponent допускает такую ​​модификацию. Что-нибудь похожее для текстовых элементов управления? Или у вас есть лучшие практики для размещения и управления текстовым содержимым в контексте пользовательских компонентов Flex?

С наилучшими пожеланиями Seref

1 Ответ

1 голос
/ 25 августа 2010

Используйте метод measure() для установки размеров текстовых компонентов.

Возможно, вам придется вызывать validateNow () для них, чтобы они были вынуждены выяснить фактические textWidth и textHeight и вернуть фактическое количество строк текста в textField, если онидостаточно долго, чтобы обернуть.Изучите класс TextMetrics, чтобы узнать больше способов измерения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...