Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   как определить наличие объекта в stage? (1120: Access of undefined property _.) (http://www.flasher.ru/forum/showthread.php?t=137840)

treety 23.03.2010 19:35

как определить наличие объекта в stage? (1120: Access of undefined property _.)
 
к примеру если объекты будут добавляться динамически..
как определить - присутствует ли данный объект или нет?
даже с trace не существующего объекта флэшка не компилится
выругивается "1120: Access of undefined property _."

CrazyFlasher 23.03.2010 19:37

вы вообще смотрите, что написано в ошибке?

treety 23.03.2010 19:39

Цитата:

Сообщение от CrazyFlasher (Сообщение 895165)
вы вообще смотрите, что написано в ошибке?

смотрю конечно
а что вас смутило?

CrazyFlasher 23.03.2010 19:41

"_." что это

treety 23.03.2010 19:43

Цитата:

Сообщение от CrazyFlasher (Сообщение 895168)
"_." что это

это то что я поставил на место имени объекта
в "Run-Time Errors" в хелпе такой "синтаксис"..если что..

Добавлено через 50 минут
вот в официальном хелпе на сайте адоба:
Цитата:

1120 Доступ к неопределенному свойству %s.
Вы попытались получить доступ к неопределенной переменной. Например, если переменная huh не была определена, то обращение к ней приведет к этой ошибке:
huh = 55;
Эта ошибка возникает только тогда, когда компьютер работает в строгом режиме.
и тут возникает дополнительный вопрос
что это значит:
"Эта ошибка возникает только тогда, когда компьютер работает в строгом режиме."
?

CrazyFlasher 23.03.2010 23:41

вы пытаетесь протрейсить объект, который у вас незадекларирован. Логично, что должна вылететь ошибка.
Цитата:

"Эта ошибка возникает только тогда, когда компьютер работает в строгом режиме."
это означает, что такое выскакивает при компиляции в Strict режиме (т.е. в нормальном режиме компиляции)

если не понятно, то покажите ваш пример, покажу что имеется ввиду

treety 23.03.2010 23:50

озадачила ситуация когда я удалил текстовое поле из клипа.
компиляция возвращала вышеуказанную ошибку.
текстовое поле использовал для вывода отладочной информации.

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

код на всяк случай:
Код AS3:

package{
        import flash.text.TextField;
        import flash.display.MovieClip;
        public class Spin extends MovieClip {
                //debug_tf - случай 1: присутствует в клипе. случай 2: отсутствует в клипе
                ////var debug_tf:TextField; - если вписать сюда эту строку то тоже ругается:
                ////"1151: A conflict exists with definition debug_tf in namespace internal."
                ////...но это естественно в первом случае..
                function Spin () {
                        trace (debug_tf);
                        //в первом случае - компилится. во втором - выдаёт ошибку
                }
        }
}


CrazyFlasher 24.03.2010 00:52

Для начала в publish settings -> ActionScript 3 properties убрать чекбокс "Automaticaly declare...."

Код AS3:

package{
        import flash.text.TextField;
        import flash.display.MovieClip;
 
        public class Spin extends MovieClip {
 
                public var debug_tf:TextField;
 
                function Spin () {
                        trace (debug_tf); //если лежит в компонентне Spin, то вернёт TextField
                }
        }
}


treety 24.03.2010 01:19

спасибо!
завтра гляну..точнее сегодня =)

Добавлено через 10 часов 54 минуты
не помогло
вот что говорит:
Цитата:

ReferenceError: Error #1056: Cannot create property debug_tf on Spin.
at flash.display::Sprite/flash.display:Sprite::constructChildren()
at flash.display::Sprite$iinit()
at flash.display::MovieClip$iinit()
at Spin$iinit()

treety 24.03.2010 12:18

Вложений: 1
вот исходник если что..
Вложение 24071


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

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