![]() |
|
||||||||||
|
|||||
|
[+1 08.07.09]
Регистрация: Mar 2009
Сообщений: 107
|
Доброго времени суток.
Как во флешьке создать глобальную переменную (в базовом классе), чтобы она была доступна во всех классах которые были вызваны в этом базовом классе и во всех под классах и так далее? Вот наглядный пример package main{ import flash.display.*; public class MyClass1 extends Sprite { private var myClass:MyClass2; // Тут мы задем глобальную переменную например myVar public function MyClass1():void { myClass = new MyClass2(); addChild(myClass); } } } package main{ import flash.display.*; public class MyClass2 extends Sprite { private var myClass:MyClass3; public function MyClass2():void { myClass = new MyClass3(); addChild(myClass); // Тут должна быть доступна перемнная myVar } } } package main{ import flash.display.*; public class MyClass3 extends Sprite { public function MyClass3():void { // И тут тоже должна быть доступна перемнная myVar // и т.д., то есть я хоть сто классов вызову (один в другом), // переменная будет все равно видна во всех. // Как это можно реализовать? } } } |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 1,195
|
А почему не сделать отдельный класс для таких переменных?
Обращаться можно будет отовсюду, globalVars.myVar, globalVars.const1 и т.п. |
|
|||||
|
[+1 08.07.09]
Регистрация: Mar 2009
Сообщений: 107
|
Цитата:
![]() Если бы конечно можно было задать в одном месте а обратиться в другом не используя сложные пути типа super, то мне такой метод подошел бы. |
|
|||||
|
public static var myVar:Number;
это переменная, не путайте с константой. это как раз про ваше "эта переменная могут меняться и заранее неизвесны"
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
[+1 08.07.09]
Регистрация: Mar 2009
Сообщений: 107
|
проблема в том что в соседнем классе она не будет хронить тоже значение что было присвоено её в предыдущем =(((
|
|
|||||
|
стервочка (я мужик)
|
vvvvvvf, прочитайте про ключевое слово "static". Ваши теории о том, что будет, а что нет, тут совсем не уместны. Вы не пытались придти к умозаключению, о том, что рас 2 человека Вам посоветовали одно и тоже, это что-то да занчит?
|
|
|||||
|
[+1 08.07.09]
Регистрация: Mar 2009
Сообщений: 107
|
package main{ import flash.display.*; import flash.events.*; import main.*; public class globalVars { public static var myVar:Number; } } package { import flash.display.*; import flash.events.*; import main.*; public class Main extends Sprite { private var glVars:globalVars; public function Main():void { glVars = new globalVars(); glVars.myVar = 1; } } } 1119: Access of possibly undefined property myVar through a reference with static type main:globalVars. |
|
|||||
|
Регистрация: Feb 2009
Сообщений: 1,195
|
Не надо никаких glVars:globalVars и new. Я выше вам сказал, как надо будет обращаться.
|
|
|||||
|
[+1 08.07.09]
Регистрация: Mar 2009
Сообщений: 107
|
Вот теперь понял.
Огромное спасибо все заработало! ![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:09. |
|
|
« Предыдущая тема | Следующая тема » |
|
|