
15.09.2014, 22:17
|
|
|
.
модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
|
Программирование — боль. Можно глянуть хотя бы на механизм скинирования во Flex 4. Там боль завернута на метаданные, компилятор и сам класс. Проксирование величин для недоступных пока компонентов — это обычное дело.
В общем там суть вся в скинах. Есть компонент TextEditor, а есть его скин. Кстати, TextEditor по сути может принимать ввод с клавиатуры и отображать набранный текст, вроде того. Сам компонент является логикой, а скин — его отображением. Что такое логика для этого компонента? Нужно установить каким стилем отображать текст и этот текст должен быть набран на клавиатуре. А еще у компонента может быть опциональный Label, отображаемый где захочешь. Вроде все просто. Вот объявлен у тебя label для компонента TextEditor как опциональный, т.е. лабеля может не быть в скине. Если есть, то поле TextEditor#labelText заполняет свойство text именно Label#text из скина. А поле labelAlign позиционирует лабель где захочешь. Кстати... Вот ты компиляешь для десктопа, и TextEditor пользует скин с обычным flash.text.TextField. А начал ты компилять для мобилки, то тут уже включается скин с использованием StageText. Подумай над этим.
|