Жесть как она есть. Или скиним компоненты Flex

· На чтение уйдёт 2 минуты · (372 слова)

Самый простой, наверное, компонент - это кнопка (Button). И один из наиболее часто встречающихся. Второй компонент, на котором я тренировался - это Accordeon. Accordeon - это несколько кнопок, которые при нажатии открывают в аккордеоне свой контрол. В частности, в БО как аккордеон реализована дополнительная зона, например. А также - кладбище, колода и область симбиотов ) Вкратце: Для того, чтобы можно было наложить скин сразу на все кнопки, можно воспользоваться стилями. Просто присвоить всем кнопкам значение стиля - и все, результат налицо... :-) В создании стиля мне очень помог полный список свойств визуального объекта - выбираем нужный контрол, жмем в окошечке со свойствами на Categorized, и... их там стооолько! Больше всего нас сейчас интересуют свойства со словом Skin - именно они задают, как будет выглядеть кнопка. В нашем скине для клиента на Дельфи было 4 состояния кнопки: Нормальное, Наведена мышка, Нажата, Отключена (невозможно нажать). Эти 4 состояния я и прописал, и получил приемлемый результат... За исключением того, что кнопка растянулась (в скине она была размером 169 пикселей, зачем - не знаю). Подправил размер кнопки в редакторе форм (выставил фиксированный), на всякий случай описал центральную часть кнопки (scale-9, более подробный туториал есть на http://www.adobe.com/devnet/flex/quickstart/skinning_components/). Получилось неплохо, но осталось еще 4 состояния - я их не стал описывать, т.к. не знал, что это =) Зато когда я начал скинить Аккордеон, неактивные кнопки в акоордеоне были красными, а активные - дефолтными белыми... Тогда я просто скопировал эти 4 скина в 4 их аналога - и все, скиннинг аккордеона был завершен. На очереди - еще много компонентов, однако теперь есть знания, как это делается. Список свойств со словом skin я получал из документации по классу во Flex SDK :-) Копировал в текстовичок все, и показывал только те из них, в которых есть свойство skin. Несколько замечаний: * В дизайнере Flex кнопки смотрятся не так, как в браузере - накладывается какая-то левая картинка * Есть подозрение, что это либо проблема Flex SDK 2.0.1, либо проблема добавления картинок в ролик - я добавлял как в туториале, через Embed. В Flex 3 Beta SDK обещали массовый импорт изображений, а также улучшенное отображение программных скинов в Design Mode, это конечно не программное, но может быть поможет? =) В общем, в понедельник будут результаты - что вышло из использования Flex 3 Beta.
Полезное