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

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

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

Регистрация: Mar 2013
Сообщений: 45
По умолчанию Как проверить существование символа на ролике?

Здравствуйте!

AS3 создаёт на ролике элемент методом: addChild();

Но потом нужно удалить элемент removeChild, но у меня есть вопрос, если ли метод, как проверить. существует ли на данный момент Символ в ролике?

Чтобы вначале проверить. если ли он, а потом его удалить, если он существует.

Добавлено через 7 минут
Можно ли обычным... *.visible == "true" ???

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Это же очень просто

Код AS3:
var mm:Sprite = new Sprite();
if(mm)
{
trace("Существует");
}
else
{
trace("Не существует");
}

Старый 07.06.2013, 14:14
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 3  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Bletraut - WOT ?

contains
__________________
Марк Tween

Старый 07.06.2013, 14:18
Final Hope вне форума Посмотреть профиль Найти все сообщения от Final Hope
  № 4  
Ответить с цитированием
Final Hope
Banned
[+5 04.06.13]
[+1 08.06.13]

Регистрация: May 2013
Сообщений: 52
Код AS3:
var mc:MovieClip = new MovieClip();
mc.name = "my_mc";
this.addChild( mc );
 
//Первый способ проверить:
trace( this.getChildByName( "my_mc" ) );
//Второй способ проверить:
trace( mc.parent == this );
//Третий способ проверить от in4core:
trace( this.contains( mc ) );

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Цитата:
Bletraut - WOT ?

contains
Тоже самое что и
Код AS3:
mm != null
Добавлено через 2 минуты
Цитата:
Код AS3:
//Первый способ проверить:
trace( this.getChildByName("my_mc") );
//Второй способ проверить:
trace( mc.parent == this );
//Третий способ проверить от in4core:
trace( this.contains( mc ) );
Извращения же просто, особенно первое и второе.

Старый 07.06.2013, 14:37
Final Hope вне форума Посмотреть профиль Найти все сообщения от Final Hope
  № 6  
Ответить с цитированием
Final Hope
Banned
[+5 04.06.13]
[+1 08.06.13]

Регистрация: May 2013
Сообщений: 52
Bletraut, вопрос был "как узнать, находится ли объект внутри другого объекта", а не узнать, существует ли объект в принципе.

Старый 07.06.2013, 14:41
Bletraut вне форума Посмотреть профиль Отправить личное сообщение для Bletraut Найти все сообщения от Bletraut
  № 7  
Ответить с цитированием
Bletraut
 
Аватар для Bletraut

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Код AS3:
var mm:Sprite = new Sprite();
var bb:Sprite = new Sprite();
bb.addChild(mm);
if(bb.mm)
{
trace("Существует");
}
else
{
trace("Не существует");
}
Тоже самое.

Старый 07.06.2013, 14:44
Final Hope вне форума Посмотреть профиль Найти все сообщения от Final Hope
  № 8  
Ответить с цитированием
Final Hope
Banned
[+5 04.06.13]
[+1 08.06.13]

Регистрация: May 2013
Сообщений: 52
Цитата:
Сообщение от Bletraut Посмотреть сообщение
Тоже самое.
Цитата:
Scene 1, Layer 'Layer 1', Frame 1, Line 4 1119: Access of possibly undefined property mm through a reference with static type flash.display:Sprite.
Да ну?

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

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Цитата:
Цитата: Сообщение от Bletraut
Цитата:
Тоже самое.
Цитата:
Цитата: Scene 1, Layer 'Layer 1', Frame 1, Line 4 1119: Access of possibly undefined property mm through a reference with static type flash.display:Sprite.
Да ну?
Пардон, не нужно было
Код AS3:
if(bb.mm)
{
писать, а просто
Код AS3:
if(mm)
{
, это на тот случай было если mm уже в bb стоит в кадре.

Добавлено через 57 секунд
Код AS3:
var mm:Sprite = new Sprite();
var bb:Sprite = new Sprite();
bb.addChild(mm);
if(mm)
{
trace("Существует");
}
else
{
trace("Не существует");
}
вот так все заработает.

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

Регистрация: Jan 2013
Сообщений: 550
Записей в блоге: 1
Совсем недавно посоветовали не использовать contains, а проверять родителя мувика через .parent
То есть если имеем:
Код AS3:
var spriteContainer:Sprite = new Sprite();
var vasya:Sprite = new Sprite();
spriteContainer.addChild(vasya);
if(vasya.parent == spriteContainer) //Истина
{
   trace("Содержит");
}
spriteContainer.removeChild(vasya);
if(vasya.parent == spriteContainer) //Уже ложь
{
   trace("Содержит");                   //не выведет
}
Спасибо товарищам КорДум и GBee за наводку

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

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

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


 


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


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