Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.09.2010, 17:02
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 1  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
По умолчанию Скинование компонента Accordion

Добрый день.
Задача заскиновать компонент Accordion.
Чтобы менялся цвет подложки заголовка в зависимости открыт ли данный раздел, цвет текста в заголовке и картиночка кастомная в заголовке была...

Подскажите пожалуйста, как лучше заскиновать, от какого класса наследовать mxml-скин?
Сам Accordion скины не поддерживает... По AccordionHeader примеров не нашел

Вот нашел примерчик скина на базовом SparkSkin... Но это только изменять графику подложки заголовка... До текста в скине доступа нет...
http://blog.flexexamples.com/2009/06...kin-in-flex-4/

Заранее спасибо.
__________________
Стой! Опасная зона! Работа мозга!

Старый 16.09.2010, 20:56
alatar вне форума Посмотреть профиль Отправить личное сообщение для alatar Найти все сообщения от alatar
  № 2  
Ответить с цитированием
alatar
 
Аватар для alatar

блогер
Регистрация: Dec 2008
Адрес: Israel, Natanya
Сообщений: 4,740
Записей в блоге: 11
Accordion это mx компонент и он не поддерживает полноценное spark скинирование (только вот такую кастрацию). Обратите внимание на свойство headerRenderer класса Accordion и класс AccordionHeader. Все вопросы у вас сведутся к одному: как скинировать mx:Button.

Старый 17.09.2010, 11:16
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 3  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
Нашел примеры в инете по использованию headerRenderer, но они под 3 флекс.
Если пишу:
Код AS3:
<mx:Accordion id="accordion">
	<mx:headerRenderer>
		<fx:Component>
			<s:Button skin="skins.AccordionButtonSkin"/>
		</fx:Component>
	</mx:headerRenderer>
</mx:Accordion>
То пишет, что
Код:
Multiple markers at this line:
-Property 'skin' is read-only.
-Button
Если же меняю пространство на mx
Код AS3:
<mx:Button skin="skins.AccordionButtonSkin"/>
То проект билдится, но в рантайме вылетае эксэпшн
Код:
Main Thread (Suspended: ArgumentError: Undefined state 'selectedUp'.)	
	mx.core::UIComponent/getState
Что собственно неудивительно, ведь у Button нет state selectedUp...
Что делать?((

---
Пример брал отсюда: http://blog.flexexamples.com/2007/09...ader-renderer/
__________________
Стой! Опасная зона! Работа мозга!


Последний раз редактировалось marat_sa; 17.09.2010 в 11:20.
Старый 17.09.2010, 11:42
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 4  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Для 3-ки юзайте стили. Пример:

Код AS3:
Accordion
{
	headerStyleName: accordionHeader;
	borderStyle: none;
	backgroundAlpha: 0.0;
	color: #888888;
	headerHeight: 20;
	verticalGap: 2;
 
}
.accordionHeader
{
	color: #45688E;
	fontSize: 12;
	selectedUpSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenHeader');
	selectedOverSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenHeader');
	selectedDownSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenHeader');
	selectedDisabledSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenHeader');
	selectedUpIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenIcon');
	selectedOverIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenIcon');
	selectedDownIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionOpenIcon');
	upSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseHeader');
	overSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseHeader');
	downSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseHeader');
	disabledSkin: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseHeader');
	upIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseIcon');
	overIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseIcon');
	downIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseIcon');
	disabledIcon: Embed(source='../../assets/vkstyle.swf', symbol='accordionCloseIcon');
	textSelectedColor: #45688E;
	textRollOverColor: #45688E;
	disabledColor: #888888;
}
Вложения
Тип файла: zip vkstyle.zip (5.4 Кб, 25 просмотров)
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.


Последний раз редактировалось GBee; 17.09.2010 в 11:48.
Старый 17.09.2010, 12:22
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 5  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
Проект у меня под Flex 4, под ним не хочет работать.
Не хочется заморачиваться с CSS, а просто сделать отдельный MXML-скин.

Спасибо за пример, если не разберусь, так сделаю.
__________________
Стой! Опасная зона! Работа мозга!

Старый 20.09.2010, 15:36
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 6  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
Вобщем подцепил скин и "черезодноместо" способом, описанным в комментах к теме:
http://blog.flexexamples.com/2009/06...kin-in-flex-4/
подцепил label из скина вместо родного label Accordion'а.
__________________
Стой! Опасная зона! Работа мозга!

Старый 20.09.2010, 17:11
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 7  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
Еще возник вопрос по аккордиону...
Как проще сделать такую рамочку, как на прикрепленном рисунке?
Как можно получить актуальный размер конкретной ячейки аккордиона в любой момент времени для биндинга его к размеру рамки?
Изображения
 
__________________
Стой! Опасная зона! Работа мозга!

Создать новую тему Ответ Часовой пояс GMT +4, время: 21:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 21:23.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.