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

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

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

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
Ну так они и выставятся, в чем проблема-то?
__________________
тонкий тролль, осеянный благодатью

Старый 13.03.2012, 22:37
Feigi вне форума Посмотреть профиль Отправить личное сообщение для Feigi Найти все сообщения от Feigi
  № 12  
Ответить с цитированием
Feigi

Регистрация: Mar 2012
Сообщений: 29
Я тоже так думала. Это было логично, пока не попробовала ). После Table. не выдаёт таких вариантов, и код также не срабатывает.

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

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Я, лично, не пойму: в чем проблема была изначально? И каким способом вы эту проблему решили?
Ну, нарисовали мы во флеше спрайт. В нем нарисовали другие мувиклипы. Импортировали этот главный спрайт в АС, назвали класс Table. Потом кодом создали этот спрайт. В нем делаем все что захотим со вложенными в него мувиками... Ни проблема ни ее решение непонятны...
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 13.03.2012, 22:47
Feigi вне форума Посмотреть профиль Отправить личное сообщение для Feigi Найти все сообщения от Feigi
  № 14  
Ответить с цитированием
Feigi

Регистрация: Mar 2012
Сообщений: 29
Проблема была в том, что не знала, как обращаться к мувикам, внутри этого спрайта Table. Пока не нашла способ table.getChildAt Дело в том, что я экпортирую этот Table как муви клип. На тот момент не понимала, что любой класс муви клип расширяет класс спрайт. На всякий случай спрашиваю- это так и есть? (Пойду почитаю в гугле). Начала изучать флеш всего 3 дня назад.
В этом была вся проблема.


Последний раз редактировалось Feigi; 13.03.2012 в 22:53.
Старый 13.03.2012, 22:55
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 15  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Может в конкретно вашем случае - это хороший вариант
Код AS3:
table.getChildAt
Но в таком случае вам нужно помнить индексы каждого вложенного мувиклипа. Рисовать на бумажке все клипы и расставлять каждому индекс, чтобы потом не забыть? Не проще ли дать каждому клипу имя и обращатся к ним по имени:
Код AS3:
trace(table.someChild1);
trace(table.someChild2);
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 13.03.2012, 23:01
Feigi вне форума Посмотреть профиль Отправить личное сообщение для Feigi Найти все сообщения от Feigi
  № 16  
Ответить с цитированием
Feigi

Регистрация: Mar 2012
Сообщений: 29
Так и делала с trace (table.getChildAt(i)); [i=0..] Просто по-началу не поняла, что Table он спрайт.

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Код AS3:
var d:DisplayObject = (DisplayObject) new Sprite();
У меня не компилируется.
__________________
...вселенская грусть

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

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
Код AS3:
var d:DisplayObject = (DisplayObject) new Sprite();
У меня не компилируется.
А так компилируется:
Код AS3:
var d:DisplayObject = (DisplayObject) (new Sprite());
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 14.03.2012, 13:26
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 19  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Ну что, давайте сравним 3 способа (код + байт-код):
1)
Код AS3:
var d:DisplayObject = (DisplayObject) (new Sprite());
Код:
_as3_getlex flash.display::DisplayObject
_as3_getglobalscope 
_as3_findpropstrict flash.display::Sprite
_as3_constructprop flash.display::Sprite(param count:0)
_as3_call (param count:1)
_as3_coerce flash.display::DisplayObject
2)
Код AS3:
var d:DisplayObject = DisplayObject(new Sprite());
Код:
_as3_findpropstrict flash.display::DisplayObject
_as3_findpropstrict flash.display::Sprite
_as3_constructprop flash.display::Sprite(param count:0)
_as3_callproperty flash.display::DisplayObject(param count:1)
_as3_coerce flash.display::DisplayObject
3)
Код AS3:
var d:DisplayObject = new Sprite() as DisplayObject;
Код:
_as3_findpropstrict flash.display::Sprite
_as3_constructprop flash.display::Sprite(param count:0)
_as3_getlex flash.display::DisplayObject
_as3_astypelate 
_as3_coerce flash.display::DisplayObject
Итак, судя по всему 1) и 2) - практически одно и то же: вызов функции пакета DisplayObject c параметром. Отличие в том, что в 1) и 2) по-разному достается ссылка на функцию DisplayObject.
И 1), и 2) могут выкинуть исключение, в отличии от 3, который в случае неудачи просто вернет null.

Если судить по количеству инструкций - то самый медленный способ должен быть 1), который и использует автор. Более того, этот способ небезопасен.
__________________
...вселенская грусть

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

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

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


 


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


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