Опубликован: 23.12.2005 | Уровень: специалист | Доступ: платный | ВУЗ: Московский физико-технический институт
Лекция 11:

Компоненты: готовые и "самодельные"

Еще немного о внутреннем устройстве компонентов

Итак, вы уже кое-что знаете об устройстве стандартных компонентов Flash MX, в том, что касается скинов.

Остановимся отдельно еще на некоторых характерных деталях их реализации, знание этих деталей может быть полезным при модификации этих компонентов для создания собственных библиотек.

Базовый класс - FUIComponent

Все стандартные компоненты Flash MX наследуются от базового класса FUIComponent, который лежит в папке Flash UI Components / Core Assets - Developer Only / FUIComponent Class Tree.

В классе FUIComponent, например:

  • определяется стандартная реализация некоторых важных методов, таких, как getEnabled, setEnabled, setStyleProperty (работа со стилями), setSize, invalidate, drawRect (базовые методы по отрисовке компонентов и фокуса);
  • закладывается вся реализация по работе с клавиатурным фокусом;
  • определяется метод registerSkinElement, обсуждавшийся выше;
  • определяется класс FStyleFormat, обсуждавшийся выше.

FLabel

FLabel - это "текстовая" часть всех стандартных компонентов Flash MX. Найти этот символ можно в папке Flash UI Components / Component Skins / Global Skins.

В большинстве конструкторов стандартных компонентов можно найти такой вызов:

this.attachMovie("FLabelSymbol","fLabel_mc",2);

После чего вся работа с текстом осуществляется через поле fLabel_mc.

Например, в методе setLabel класса FPushButtonClass, реализующего кнопку, вы увидите такой вызов:

this.fLabel_mc.setLabel(label);
алексеи федорович
алексеи федорович
Беларусь, рогачёв
Тамара Ионова
Тамара Ионова
Россия, Нижний Новгород, НГПУ, 2009