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

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

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

Регистрация: Jul 2006
Сообщений: 26
По умолчанию переменные в подгруженном swf

1. Как обратиться к переменной (статичной), находящейся в основном классе подгруженного swf? Или даже не в основном, а в каком-нибудь присутствующем классе?

2. Как обратиться к мувику, находящемуся в подгруженном swf?
Код AS3:
ldr.content.getChildByName("movic")
естессно, не работает.

Добавлено через 40 минут





Все разобрался, фишка в том, что нужно не напрямую
Код AS3:
ldr.content.дай_мне_че-нить
, а вначале создать переменную типа
Код AS3:
var perem:Object; perem=ldr.content
, а уже потом обращаться к ней за методами, пременными и т.д.

Подобный вопрос поднимался неоднократно, но лаконичного ответа не было, сразу дебри.

Добавлено через 1 час 29 минут





Продолжу спрашивать.
До основного класса подгруженного свф я добрался. Но мне этого мало: хочу и до остальных классов докопаться. Вот, скажем, создана вышеупомянутая переменная perem. В подгруженном свфе есть мувик m1 с классом m1_class, например. Докапываюсь до него так:
Код AS3:
trace(perem.getChildByName("m1").constructor);
выдает [class m1_class]. Замечательно, вроде получена ссылка на нужный класс! Но вот теперь из этого полученного референса на класс я не могу вытянуть ни методов, ни переменных, прописанных в нем. То есть, например,
Код AS3:
perem.getChildByName("m1").constructor.публичная_переменная1_из_m1_class
-пишет неопределена! Как ее достать?!
Повторюсь - с основным классом подгруженного свф нет проблем.

Добавлено через 1 час 54 минуты

Извините меня за мой монолог. И с этим разобрался!

В данном (последнем случае) переменная должна быть static! В случае же с основным классом наоборот - не статик, а просто паблик!

Вот и все. Разве, может кто-нибудь грамотно истолкует - почему для доступа к переменной из основного класса она должна быть не статик (иначе ошибка), а в случае остальных классов - статик (иначе не определена).

Но можно и не истолковывать, просто запомню, как правило


Последний раз редактировалось Sleepwalker; 15.02.2010 в 04:28. Причина: разобрался
Старый 15.02.2010, 07:41
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от Sleepwalker Посмотреть сообщение
Разве, может кто-нибудь грамотно истолкует - почему для доступа к переменной из основного класса она должна быть не статик (иначе ошибка), а в случае остальных классов - статик (иначе не определена).
Это у вас ошибка в коде, а не проблемы доступа.

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

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
в данном случае, имея ссылку на класс вы получите значения свойств класса.
если будет ссылка на экземпляр класса (perem.getChildByName("m1")), то получите значения свойст экземпляра класса (perem.getChildByName("m1").публичная_переменная_без_static)
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

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

Регистрация: Jul 2006
Сообщений: 26
Я просто запутался, да еще попытался других запутать Все ясно, как божий день. Спасибо!

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

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

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


 


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


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