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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.02.2013, 22:11
Guitariz вне форума Посмотреть профиль Отправить личное сообщение для Guitariz Найти все сообщения от Guitariz
  № 1  
Ответить с цитированием
Guitariz

Регистрация: Feb 2013
Сообщений: 10
Tools Как хранить стили линий и заливок

Прошу прощения за нубский вопрос, но пытаюсь сохранить стили линий и заливок, вариант сохранить в Graphics, но тогда непонятно, как оттуда извлечь...

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Что мешает написать класс, в котором будут все необходимые свойства, и хранить его экземпляры для нужных объектов?
например
Код AS3:
package {
    public class GraphicStyle {
           public var lineColor:uint = 0;
           public var fillColr:uint = 0;
    }
}
Сохранять куда-то эти экземпляры, а потом оттуда вытаскивать нужные свойства

Старый 23.02.2013, 23:02
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 3  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Есть же имплементаторы IGraphicsData, например параметры простой заливки можно хранить в GraphicsSolidFill — не подходит? Опишите задачу, откуда хранить, где/куда хранить, чем и для чего восстанавливать.
__________________
Reality.getBounds(this);

Старый 24.02.2013, 08:58
Guitariz вне форума Посмотреть профиль Отправить личное сообщение для Guitariz Найти все сообщения от Guitariz
  № 4  
Ответить с цитированием
Guitariz

Регистрация: Feb 2013
Сообщений: 10
Задача – динамическая отрисовка объектов (кнопки, поля вывода, спидбаттоны и пр.) в соотвтствиии со списком стилей, хранящихся в отдельном пэкэдже

Старый 24.02.2013, 10:35
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 5  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Хранить данные в виде классов как-то странновато — обычно используют текстовые файлы, xml или css, которые можно загружать извне и парсить налету в рантайме — но вобщем то можно и так, например класс-список констант. Если все элементы GUI используют общий набор цветов, можно дать им имена в таком классе-списке, а все элементы будут его импортировать. Не самое элегантное решение.
Код AS3:
package ***.styles 
{
	import flash.filters.DropShadowFilter;
	public class Style
	{
		/*    FILTERS    */
		public static const SHADOW_FILTER:DropShadowFilter = new DropShadowFilter(2, 90, SHAD, .5, 0, 4, .8, 3);
		public static const LABEL_FILTER :DropShadowFilter = new DropShadowFilter(1, 60, BLICK, .8, 0, 0, 1, 1);
		public static const DRAG_FILTER  :DropShadowFilter = new DropShadowFilter(2, 60, SHAD, 1, 4, 4, 1, 3);
		/* DEFAULT STATE */
		public static const BLICK	:uint = 0xffffff;
		public static const HILIGHT	:uint = 0xefefef;
		public static const LIGHT	:uint = 0xdddddd;
		public static const MIDDLE	:uint = 0xcccccc;
		public static const TONE	:uint = 0xaaaaaa;
		public static const DARK	:uint = 0x888888;
		public static const SHAD	:uint = 0x666666;
	}
}
а в самих контролах при отрисовке используете эти константы, то есть ссылаетесь на этот класс стилей, типа upState.graphics.beginFill(Style.TONE);
Соответственно все стили будут собраны в одном месте, где их можно легко редактировать сразу для всех элементов. Решение не самое гибкое, но простое и надежное.
__________________
Reality.getBounds(this);

Старый 24.02.2013, 14:59
Guitariz вне форума Посмотреть профиль Отправить личное сообщение для Guitariz Найти все сообщения от Guitariz
  № 6  
Ответить с цитированием
Guitariz

Регистрация: Feb 2013
Сообщений: 10
Спасибо, именно это и подразумевалось. В целом согласен, с изменением стилей теперь заморочка, но в общем то в рамках этого приложения это и не требуется

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

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

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


 


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


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