Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Доступ из одного класса к другому (http://www.flasher.ru/forum/showthread.php?t=146961)

КорДум 24.11.2010 19:47

Цитата:

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

saikspaik 24.11.2010 19:59

i.o. извините, от Вас посчитал этот вопрос риторическим, отвечаю.

Код AS1/AS2:

//Это Document Class
package  {
 
        import flash.display.MovieClip;
 
        public class Main extends MovieClip {
 
                var classA:Object = new ClassA();
                var classB:Object = new ClassB();
 
                public function Main() {
                        trace(classA.strA);//Тут все нормально
                }
        }
 
}

Код AS1/AS2:

//Это класс ClassA
package  {
 
        public class ClassA extends Object {
 
                public var strA:String = "Hello from ClassA!";
 
                public function ClassA() {
 
                }
 
        }
 
}

Код AS1/AS2:

//Это класс ClassB
package  {
 
        public class ClassB {
 
                public function ClassB() {
//                        trace(parent.classA.strA)//Тут ошибка, а нужно как-то достать strA из этого класса
                }
        }
}

Вот, проще просто не возможно. Нужно достучаться до strA из classB любым, или лучше любыми способами, если их несколько.

Добавлено через 4 минуты
КорДум, я как раз тем и занят, что просматриваю все темы так или иначе похожие на мой случай. Не сказал бы что мне лень, даже интересно, есть хорошие примеры. А поиск у меня плохо работает.

i.o. 24.11.2010 20:08

люди то нормальные с этого начинают вопрос, а не на 42м посту догадываются наконец-таки привести пример :)

Добавлено через 5 минут
Вот и все. Я бы вам ответил это сразу же, без ля-ля на 40 постов.
Код AS3:

 
//Это Document Class
package  {
 
        import flash.display.MovieClip;
 
        public class Main extends MovieClip {
 
                var classA:ClassA;
                var classB:ClassB;
 
                public function Main() {
                        classA = new ClassA();
                        classB = new ClassB( classA );
                }
        }
 
}

Код AS3:

//Это класс ClassA
package  {
 
        public class ClassA extends Object {
 
                public var strA:String = "Hello from ClassA!";
 
                public function ClassA() {
 
                }
 
        }
 
}

Код AS3:

//Это класс ClassB
package  {
 
        public class ClassB {
 
                public function ClassB( classA:ClassA ) {
                        trace(classA.strA);
                }
        }
}


saikspaik 24.11.2010 20:23

Ну вот, этот пост по самому существу. От меня как и обещалось благодарность и большое спасибо :)

Если б еще можно было тему исправить, оставив только самое главное.

i.o. 24.11.2010 20:27

saikspaik, дак ты пиши сразу что тебе нужно. Чтобы не приходилось вытягивать по столько страниц. Нужно же тебе.

Добавлено через 5 минут
2 leofit, я запомнил каверканье моих цитат...


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

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