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

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

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

Регистрация: Jul 2012
Сообщений: 16
По умолчанию Инстансы и скриптовый мувик

В библиотеке имеем клип Base, в котором располагаются некоторые элементы - название, цена, картинка продукта- тп. В коде этот мувик вставлен в другой, чисто скриптовый, ну и уже этому скриптовому мувику присваиваются значения для элементов Base - они берутся из внешнего XML. Я хочу использовать Base в нескольких местах - чтобы не в одном месте выводилась инфа о товаре, а в разных. Но как мне его инстансировать, если все ссылки то цепляются не непосредственно к нему, а к тому мувику, который в скрипте создан и включает в себя этот самый Base?
Код AS1/AS2:
Produc = ProductsContainer.attachMovie("Base","Produc"+i,i);
i - это переменная, номер продукта.

Старый 30.07.2012, 11:46
mooncar вне форума Посмотреть профиль Отправить личное сообщение для mooncar Найти все сообщения от mooncar
  № 2  
Ответить с цитированием
mooncar
Модрон-ветеринар
 
Аватар для mooncar

администратор
Регистрация: May 2009
Адрес: г.Казань
Сообщений: 7,357
Отправить сообщение для mooncar с помощью ICQ Отправить сообщение для mooncar с помощью Skype™
Цитата:
Сообщение от avo Посмотреть сообщение
все ссылки то цепляются не непосредственно к нему, а к тому мувику, который в скрипте создан и включает в себя этот самый Base
Что значит "цепляются ссылки"? О каких "ссылках" речь? Просто "ссылка" в ActionScript - это вполне конкретный термин. А в его контексте смысл этой фразы не вполне ясен.

Ну и сразу: приаттаченый мувик можно только продублировать (методом duplicateMovieClip), при этом дублировать можно только в пределах того же самого контейнера-родителя. Вдобавок к этому приобретенные (назначенные) свойства вложенных объектов не будут повторены в дубле (такие, как значения текстовых полей, например). То есть полноценно использовать его еще "где-то" нельзя.

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

------------------------------
Предположу ситуацию, возможно, похожую на вашу. Допустим, вы создаете таблицу номенклатуры товаров со строками-мувиками, соответствующими конкретному товару.
Тогда при формировании таблицы (например в цикле с переменной цикла id) и задании значений для текстовых полей конкретного мувика-строки-товара мы будем использовать значения элементов "двумерного" массива (полученного при парсинге XML), вида items[id]['name'], items[id]['price'].... и т.д. по всем нужным характеристикам.
Индекс id также зададим в этом же цикле как свойство (переменную) для этого конкретного мувика-строки.
Пусть при клике по полоске открывается карточка товара. При этом при клике мы получим id, и по нему же в карточке товара вновь выведем требуемые значения, взятые из этого же массива.

Мысль такая - не стоит использовать отображаемые элементы как источник данных. Следует разделять данные и их визуализацию.

Если же у вас какая-то другая ситуация, то стоило бы её раскрыть поподробнее.
__________________
Идите первым!


Последний раз редактировалось mooncar; 30.07.2012 в 12:34.
Старый 30.07.2012, 12:03
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 3  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Очень странная проблема. Вы же сами пишите код, поэтому вы и управляете значениями ссылок. В вашем примере у вас переменная "Produc" (почему-то без "t") и есть ссылка на клип, а не ссылка на контейнер для этого клипа. Нужны другие клипы — создавайте их и назначайте ссылки.
__________________
hauts.ru

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

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

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


 


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


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