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

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

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

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
По умолчанию AS2->3 migration: attachMovie

Упоминания проблемы в инете есть. Вот ту даже закопали одного товарища ветераны.
http://www.flasher.ru/forum/archive/...p/t-76015.html

В хелпах рекоммендуется использовать следующую конструкцию:
Цитата:
In the library, right click on the symbol , click on Linkage. There select
the checkbox Export for ActionScript. Give a name (gf) in the class field,
flash will autogenerate a class for you with that name.
var myGf = new gf()
this.addChild(myGf)
this is equivalent to attachMovie
Меня такой подход вообще не устраивает. Т.к. раньше я мог юзать такую конструкцию
Код:
this.attachMovie(link[i], 'name'+i, depth);
А теперь как такую конструкцию реализовывать, если для каждого линка создается свой класс, на который, если его не описать ручками, еще и ругается компилер флекс-билдера - нет понятия.
:-(

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

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
__etc, только ты можешь меня спасти -)

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

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
getDefinitionByName() )))
Позволяет обратиться к классу по имени из переменной
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 01.11.2006, 13:20
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ммм, у тебя в либе есть кучу linkN, где N от 0 до бесконечности, что-ли?
miramax меня определил =)
Тем не менее, придётся создавать много классов.
Или, как вариант решения — создать мувик контейнер, запихать туда кучу твоих link с заданными именами, потом навесить динамический класс на этот контейнер и дергать из него линки.
Что-то вроде var link:MovieClip = containerClassInstance['link'+i] as MovieClip; ну и addChild его.
Не пробовал, может и прокатит.


Последний раз редактировалось etc; 01.11.2006 в 14:15.
Старый 01.11.2006, 13:49
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 5  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
Цитата:
Сообщение от miramax
getDefinitionByName() )))
Позволяет обратиться к классу по имени из переменной
Код:
var test:Class = getDefinitionByName("pic1") as Class;
this.addChild(test as Sprite);
не работает ("Parameter child must be non-null", то бишь приведение к типу не пашет). ну и
Код:
var test:Sprite = new pic1() as Sprite;
this.addChild(test);
тоже не пашет (с той же ошибкой).

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

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
Цитата:
Сообщение от __etc
создать мувик контейнер, запихать туда кучу твоих link с заданными именами, потом навесить динамический класс на этот контейнер и дергать из него линки.
Понял, будет запасным вариантом, занкс -)

Старый 01.11.2006, 14:15
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от MyXus
Код:
var test:Class = getDefinitionByName("pic1") as Class;
this.addChild(test as Sprite);
не работает ("Parameter child must be non-null", то бишь приведение к типу не пашет).
Правильно, должен быть класс pic1. Кстати, могбы сразу var test:Sprite = getDefinitionByName('pic1') as Sprite. Ну опять же, при наличии класса pic1.

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

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
Цитата:
Сообщение от __etc
Правильно, должен быть класс pic1. Кстати, могбы сразу var test:Sprite = getDefinitionByName('pic1') as Sprite. Ну опять же, при наличии класса pic1.
Так я описывал этот вариант постом выше. Не катит. А класс pic1 существует (auto-generated), это только флекс об этом не знает, а флеш - знает.

Старый 01.11.2006, 14:27
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Здравствуйте, приехали! Ты под Flex или под Flash 9 пишешь-то?

Старый 01.11.2006, 14:56
MyXus вне форума Посмотреть профиль Отправить личное сообщение для MyXus Посетить домашнюю страницу MyXus Найти все сообщения от MyXus
  № 10  
Ответить с цитированием
MyXus
 
Аватар для MyXus

Регистрация: Mar 2001
Адрес: msk
Сообщений: 1,416
ну я сижу в флекс-билдере под эклипс, а запускаю во флеше -)
доступ к библиотеке нужен, да и наглядность..

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

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

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


 


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


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