Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Флейм (http://www.flasher.ru/forum/forumdisplay.php?f=53)
-   -   Создание глобальных переменных (http://www.flasher.ru/forum/showthread.php?t=163736)

Sweet07 10.08.2011 23:45

Создание глобальных переменных
 
Как правильно создать такую переменную, чтоб можно было возвращать её значение в любой момент ролика?
Поясню. Созданная через var на основной шкале, переменная недоступна для использования в коде мувиков.

bav 11.08.2011 00:27

Вот прямо с этого момента берем и перестаем писать код в кадрах. Потому что в классе это делается через элементарное объявление статической переменной.
Код AS3:

public static var someVar:SomeType;


saikspaik 11.08.2011 01:16

Вот тут подробнее

Котяра 11.08.2011 01:25

и зачем здесь статик?

saikspaik 11.08.2011 01:26

Чтобы с любого места можно было делать GlobalClass.myVar = myVal;

КорДум 11.08.2011 01:28

Замена _root и _global? У вас неправильная архитектура программы.

Wolsh 11.08.2011 01:30

Господи Шакьямуни, благодарю Тебя, что не окружил слугу своего коллегами, творящими подобное!

bav 11.08.2011 02:00

Цитата:

и зачем здесь статик?
Котяра, а что бы ты предложил?

Котяра 11.08.2011 02:17

События, или, на крайняк передачу ссылки по интерфесу.
А вообще речь идёт о конкретном ролике. т.е. об экземпляре. статик тут в любом случае не нужен.
Просто не пишем во фрэймах и заводим поле в классе.
Код AS3:

public var someVar:SomeType;



UPD недопонял. речь идёт о поле в главном классе.

тогда только события, или передача ссылки.

Mur4ik 11.08.2011 10:13

в любой момент и в любом клипе можно так
где то на главной шкале объявляем (имя переменной может быть не обязательно stageVar :))
Код AS3:

var stageVar:String = "Бла-бла-бла";

далее в любом из клипов любой вложенности
Код AS3:

trace(MovieClip(this.root).stageVar); //выведет Бла-бла-бла

это ответ на вопрос "как можно" сделать, а вот если нужно "как правильно", то читайте комменты выше.


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

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