Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Узнавать и изменять данные массивов, созданных в root, из movieclip на root? (http://www.flasher.ru/forum/showthread.php?t=178180)

alex001 16.04.2012 19:44

Узнавать и изменять данные массивов, созданных в root, из movieclip на root?
 
В root я создал массив myArray, затем, на root был создан movieclip, теперь надо из нового мувклипа узнавать и записывать данные этого массива. Потом там будут и другие мувклипы, которым так же понадобится этот массив.
Как это сделать? Переменные я могу "достигать" через parent, а здесь? Может как-то глобальными их можно сделать?

MyDuty 16.04.2012 21:50

а чем тебе масив не переменная?

alex001 16.04.2012 22:19

если например написать
Код AS3:

trace(parent.myArray[1]);

то выдается ошибка
Код:

1119: Access of possibly undefined property myArray through a reference with static type flash.display:DisplayObjectContainer.

PainKiller 16.04.2012 22:21

попробуйте так:
Код AS3:

(root as MainClass).myArray[index]

или на крайняк всегда можно создать массив как статическое свойство и обращаться к нему откуда угодно:
Код AS3:

public static var myArray:Array;


MikroAcse 16.04.2012 23:09

Можно так:
Код AS3:

root.myArray[index];
// или
this.root.myArray[index];


alex001 18.04.2012 16:54

PainKiller, огромное спасибо, второй способ работает.
MikroAcse, не работает вроде, ошибку возвращает.

MikroAcse 18.04.2012 17:40

Код:

MikroAcse, не работает вроде, ошибку возвращает.
Какую?

alex001 18.04.2012 18:44

1119: Access of possibly undefined property myArray through a reference with static type flash.display:DisplayObject.
но на root я ее создал
Код AS3:

var myArray:Array = new Array;

хотя возможно еще какую-то ошибку допустил.
???

MikroAcse 18.04.2012 19:01

Проблема может и не в этом, но:
Код AS3:

var myArray:Array = new Array();


alex001 18.04.2012 19:08

нет, не в этом.

PainKiller 18.04.2012 21:55

да проблема не в этом, я не зря написал так:
Код AS3:

(root as MainClass).myArray[index]

если не сделать приведение типа, как раз такая ошибка и выкидывается. Компилятор же не знает, что вы в root напихали.

alex001 21.04.2012 22:51

извеняюсь за долгий ответ.


1120: Access of undefined property MainClass.
я так понимаю надо этот класс еще создать? что MainClass вообще обозначает?

MikroAcse 21.04.2012 23:03

Цитата:

я так понимаю надо этот класс еще создать? что MainClass вообще обозначает?
Я вижу вы новичок...
Слушайте, не пишите внутри объектов! Это неправильно.

PainKiller 22.04.2012 01:20

Цитата:

Сообщение от alex001 (Сообщение 1076369)
1120: Access of undefined property MainClass.
я так понимаю надо этот класс еще создать? что MainClass вообще обозначает?

MainClass это ваш класс документа, класс с которого начинается выполнение программы, если вы пишите в кадрах, естественно у вас его нет.

alex001 24.04.2012 19:54

Ну да, я новичок)
MikroAcse, всмысле внутри movieclipа? Это чем-то плохо?
PainKiller, понял.


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

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