Программный скиннинг Flex PopUpButton - PullRequest
0 голосов
/ 26 августа 2011

Я пытаюсь программным образом оформить элемент управления PopUpButton в Flex Builder, но безуспешно.Насколько я знаю, для этого необходимо написать собственный класс скина или создать модифицированную версию самого класса элемента управления (поскольку элемент управления MX, а не Spark).Опять же, просто чтобы уточнить, я хочу программно изменить внешний вид, а не просто установить свойства стиля или отобразить изображение.Я смог сделать это программно с другими элементами управления MX (например, вкладками в навигаторе вкладок), но не с помощью PopUpButton.

Я думаю, что часть проблемы может заключаться в том, что элемент управления фактически состоит из двухотдельные кнопки, поэтому вы не можете нарисовать только одну прямоугольную область на весь элемент управления.Кто-нибудь знает, как к этому подойти?

Спасибо за помощь!

1 Ответ

0 голосов
/ 12 сентября 2011

Решение, на котором я остановился, заключается в использовании пользовательского компонента MXML, который содержит две кнопки зажигания. Там есть кнопка открытия меню (то есть кнопка со стрелкой) и кнопка для выполнения самой последней команды, выбранной из меню. У каждой из этих кнопок есть свой скин.

При нажатии кнопки открытия открывается меню, которое изначально создается в подпрограмме компонента «CreationComplete». Подробнее о меню здесь: http://www.flexafterdark.com/docs/Flex-Menus (или так как страница была недоступна, когда я попробовал: http://webcache.googleusercontent.com/search?q=cache:http://www.flexafterdark.com/docs/Flex-Menus)

Вы также можете сделать это с помощью кнопки и раскрывающегося списка в пользовательском компоненте MXML, но, похоже, это не работает с многоуровневым иерархическим XML, который я хотел использовать в раскрывающемся меню.

Если кто-то придумает что-то лучше, пожалуйста, пожалуйста, опубликуйте это ...

...