|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
обращение из одного класса к объектам другого класса
Привет, объясните пожалуйста, в чем моя ошибка при обращении к объекту другого класса?
Например: package { import flash.display.*; public class Bg extends Sprite { public function Bg() { stage.scaleMode=StageScaleMode.NO_SCALE; stage.align=StageAlign.TOP_LEFT; bgMove(); } protected function bgMove() { var bgConteiner:Sprite = new Sprite; stage.addChild(bgConteiner) var bg:jpg = new jpg; bgConteiner.addChild(bg) new MovingBg(); } } } |
|
|||||
Регистрация: Jun 2009
Сообщений: 461
|
Попробуйте в классе MovingBg написать extends Bg. И импортируйте в этот файл папку где находиться класс Bg.
|
|
|||||
Регистрация: Jan 2007
Сообщений: 302
|
Это не обьект, это вам подсказывают расширить класс.
Почитайте про наследование! Тогда может все станет на свои места... А в вашем случае, чтоб обратиться к другому классу не прибегая к наследованию можно воспользоваться композиционированием - насколько понимаю(читал) - эт почти то же, что и наследование. тогда обратитесь к своему обьекту, функции из другого класса вот так.. package { import flash.display.*; public class MovingBg extends Sprite { public var my:Bg = new Bg(); public function MovingBg() { trace("класс MovingBg загрузился!") trace(my.bg.name)//ругается } } } в |
|
|||||
Killer_13, не сответуйте ерунды
у объекта класса Bg нет публичного свойства bg, к нему нельзя обратиться из MovingBg Цитата:
|
|
|||||
Регистрация: Jan 2007
Сообщений: 302
|
Цитата:
тогда bg нужно вывести как public и будет работать так как я написал. package { import flash.display.*; public class Bg extends Sprite { public var bg:jpg; public function Bg() { и дальше в функции bg= new jpg; Цитата:
|
Часовой пояс GMT +4, время: 02:08. |
|
« Предыдущая тема | Следующая тема » |
Теги |
классы , обращение , объект |
|
|