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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

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

Регистрация: Jul 2011
Адрес: SPb
Сообщений: 34
Thumbs down Правильное формирование SWC из FlashIDE для FD

Создал много мувиков - все они должны быть одного класса Drag_n_Drop. Разница во внешнем виде и их наименовании.
Вопросы:
1. Как же правильно прикрепить к ним этот класс?
Делаю следующим образом:
Название: SymbolProp.jpg
Просмотров: 158

Размер: 78.7 Кб

2. Почему у каждого объекта свой класс? Это приводит к ненужному хламу в виде "пустых" классов.
По логике вещей должен быть один класс и много переменных, а не подклассов.

3. Далее возникают более забавные загадки: в проекте FD классы лежат в папке src, при этом в package писать ничего не нужно. Но для привязки класса в IDE следует указать полный путь к файлу (src.Drag_n_Drop) - и тут возникает ошибка "в package не отображён путь к файлу". Исправляю package src, после чего при паблише SWC FlashIDE недоволен всеми остальными классами, взаимодействующими с Drag_n_Drop. Возникает недовольство - а какое ему вообще дело до других классов?
_________________________________________________________________________________________________
Просмотрел эту запись, прочитал комментарии, но по неопытностии мало что понял
http://www.flasher.ru/forum/blog.php?b=280
Спасибо КорДуму, но он описал общий принцип, не указав, на какие именно кнопочки нажимать.

Пожалуйста, опишите пошагово, простым языком - что именно нужно сделать для нормального экспорта мувиков со своим классом в SWC.

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

Регистрация: Jul 2011
Адрес: SPb
Сообщений: 34
Забыл отметить, что все объекты Card_ лежат в библиотеке! На сцене, при этом, ничего не находится, и находится не должно. Соответственно, смысл формирования SWC - создать библиотеку переменных класса Drag_n_Drop, выглядящих конкретным образом.

Старый 19.02.2012, 15:10
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 3  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Тут следует расписать логику формирования SWC с точки зрения обычного флеш-программиста. Зачем создается SWC? Затем, чтобы забыть о FlashIDE и только один раз сформировать библиотеку звуков, графических элементов, шрифтов и может быть еще просто классов.
1 и 2. Нет ничего плохого в том, что каждому элементу задается свой "пустой" класс. Его можно расширить своим классом или просто использовать композицию, добавив экземпляр этого класса в свой класс.
Элементы могут использоваться лишь единожды, тогда можно (это уже Вы сами смотрите, как удобнее Вам) создать один клип-контейнер, дать ему класса, внутрь поместить эти единоразовые элементы и дать им обычные имена инстансов. Дальше вытащить элементы поможет getChildByName().

3. src в данном случае (для FD) считается корневой папкой. То есть нулевым пакетом.

Остальное не совсем понял. Никогда таких проблем не было. Но я использовал SWC ТОЛЬКО для графических элементов, без привязки своих классов с кодом. Может, Вам поступить так же и использовать расширение или композицию?
__________________
тут я

Старый 19.02.2012, 15:22
Ne_mesis вне форума Посмотреть профиль Отправить личное сообщение для Ne_mesis Найти все сообщения от Ne_mesis
  № 4  
Ответить с цитированием
Ne_mesis
 
Аватар для Ne_mesis

Регистрация: Jul 2011
Адрес: SPb
Сообщений: 34
Спасибо Вам, КорДум! Но снова я понял только половину) У меня плохо с терминами...
Действительно попробую поместить всё на сцену и дать Instance Name. Тогда никаких классов в properties привязывать не нужно? И далее пишем что-то вроде
Код AS3:
var Card_1:Drag_n_Drop= super.getChildByName("closeButton")
?

Старый 19.02.2012, 15:25
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 5  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Нет, не на сцену. А в клип-контейнер. Этому клипу задать класс.
Далее создаем экземпляр этого класса и через getChildByName() вытаскиваем элементы.
Еще раз повторю, это если элементы используются единожды. То есть именно так делать удобно в таком случае (есть исключения, но я обобщаю для простоты =) )
Для многоразовых элементов проще указать класс (како-то левый), он создастся пустым. После чего в коде в коде мы либо расширяемся от этого класса, либо добавляем экземпляр этого класса на в программу и оперируем с ним.

Что-то еще непонятно — спрашивайте. Учитель из меня хреновый )
__________________
тут я

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

Регистрация: Dec 2010
Адрес: Ярославль
Сообщений: 1,255
Цитата:
Сообщение от КорДум Посмотреть сообщение
Дальше вытащить элементы поможет getChildByName()
Зачем? К таким элементам можно обращаться напрямую по их инстансам.

Старый 19.02.2012, 15:50
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 7  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
А, забыл, что FlashIDE с недавних пор генерирует свойства-ссылки.
__________________
тут я

Старый 19.02.2012, 16:28
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 8  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
По поводу разночтения Drag_n_Drop и src.Drag_n_Drop: существует такое понятие как classpath - путь, от которого "отсчитываются" пакеты. У FD это src, у флэша - корень проекта. Вот и получается, что один и тот же файл FD видит как Drag_n_Drop, а флеш - как src.Drag_n_Drop.

Чтобы это исправить, зайдите в настройки публикации флэша, там - в настройки AS3 и измените classpath: уберите запись "." и добавьте запись "./src".
__________________
тонкий тролль, осеянный благодатью

Старый 19.02.2012, 16:29
Ne_mesis вне форума Посмотреть профиль Отправить личное сообщение для Ne_mesis Найти все сообщения от Ne_mesis
  № 9  
Ответить с цитированием
Ne_mesis
 
Аватар для Ne_mesis

Регистрация: Jul 2011
Адрес: SPb
Сообщений: 34
Gaen, абсолютно справедливо, благодарю!
корДум, спасибо - дошло.
Эхх, как разберусь - напишу подробный гайд с цветными картинками...


Последний раз редактировалось Ne_mesis; 19.02.2012 в 17:16.
Создать новую тему Ответ Часовой пояс GMT +4, время: 07:38.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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