Пользовательская форма панели / форма в Flex - PullRequest
0 голосов
/ 21 мая 2009

То, что я пытаюсь сделать, - это создать необычную пользовательскую панель входа в систему. Его функции и содержащие компоненты должны быть достаточно стандартными, как и в обычной панели входа в систему - FormItem, TextInput, Validators и т. Д. Я провел небольшое исследование и обнаружил, что можно создавать скины с помощью Fireworks, однако это не решает мою проблему, поскольку не позволяет мне манипулировать с формой панели. Как лучше всего это сделать?

Ответы [ 3 ]

1 голос
/ 22 мая 2009

Я бы сделал следующее:

  1. Экспорт ресурса из Fireworks в формате PNG с соответствующей прозрачностью
  2. Добавьте ресурс в ваше приложение и предоставьте соответствующие координаты Scale9
  3. Ссылка на встроенный ресурс как стиль "borderSkin" для вашей Panel.

Вот пример этого для TitleWindow, который является подклассом Panel, поэтому должен применяться тот же подход:

http://butterfliesandbugs.wordpress.com/2008/02/15/using-a-border-skin-for-a-titlewindow-in-flex-3/

1 голос
/ 21 мая 2009

Я бы порекомендовал использовать Degrafa framework для чего-то подобного. Вы можете программно влиять на скин вашего компонента во время выполнения, чтобы изменить его форму.

Другим способом было бы использовать простой холст с фоном изображения, который соответствует вашим потребностям, но это не очень гибко.

0 голосов
/ 22 мая 2009

Я бы согласился с Джоэлом, Degrafa - это путь для создания всех пользовательских скинов и т. Д. Если это не удастся (поскольку это является дополнительным препятствием для понимания), я бы выдумал, что вместо использования Panel будет использоваться Canvas. Расширьте класс Canvas и сделайте его похожим на любую фигуру, которую вы пытаетесь создать. Установите альфа-фон фона холста на 0, затем добавьте нужные фигуры. Используя этот подход, вам, возможно, придется дублировать то, что может делать панель, чего не могут Cavnas, но вы сможете настроить внешний вид.

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