Форум 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=110178)

Anri_k 28.03.2008 17:01

значение переменной из одного класса передать в другой
 
Здравствуйте! похожие темы видел, но всё равно не могу разобраться. подскажите методы передачи значение переменной из одного класса в другой не являюшихся родитель-потомок? надеюсь правильно выразился

Storm[pfp] 28.03.2008 17:24

самый простой вариант :)

Код:

var A:classA=new classA()
var B:classB=new classB()

B.pos=A.pos

еще я ингда юзаю паттерн Singleton, ипользуя его как хранилищ данных и обращаюсь к нему когда надо .

Anri_k 28.03.2008 18:15

я правильно делаю? а то не получается
пишу в классе в котором мне нужно значение, переменной из другого класса( из класа News значение переменной inf1 в класс Test в переменную Inf2)
Код:

var A: News= new News();
var B: Test= new Test();

B.inf2=A.inf1;


Storm[pfp] 28.03.2008 19:09

все верно , а в чем проблема ?
свойства не private случайно ?

Anri_k 28.03.2008 19:19

нет. и присваивания не происходит. но и при компиляции нет ошибок ни каких. у меня в классе News присваивается значение inf1=1. а в классе Test условие если inf2>0(B.inf2- тоже пробовал) то вывожу на экран объект. но он не выводиться.

Storm[pfp] 28.03.2008 19:31

приведи полный пример а то как то непонятно

Anri_k 28.03.2008 19:39

ок
класс News
Код:

package main {
        import flash.display.*;
        import flash.net.URLRequest;
        import flash.net.URLLoader;
        import flash.events.*;
        import flash.text.*;

dynamic public class News extends MovieClip{
                public var ldr:Loader = new Loader();
                public var container: Sprite= new Sprite;
                public var info:Number ;
                public function News(): void {
                    ..........
                addEventListener(MouseEvent.MOUSE_DOWN, MouseDown);
                                                          }
.........
              public function MouseDown(e:Event=undefined) :void {
                info=1;
                removeChild(container);
                if (parent is MovieClip)
                                {                               
                                MovieClip(parent).play();
                }               
                }

class Test

Код:

package main {
    import flash.display.*;
        import flash.net.URLRequest;
        import flash.net.URLLoader;
    import flash.events.*;
        import flash.text.*;
       
                 
        dynamic public class Test extends MovieClip {
                public var ldr1:Loader = new Loader();
                public var info:Number ;
               
                public function Test(): void {
                    var a: News= new News();
                var b: Test= new Test();
                b.info=a.info;
                if (b.info==1){
                        var url:String = "banner/banner.swf";
                        var urlReq:URLRequest = new URLRequest(url);
                        ldr1.x=120;
                        ldr1.y=190;
                        ldr1.load(urlReq);
                        addChild(ldr1);
                                                }
        }
}
}


max_oil 01.04.2008 18:44

Код:

public class News {
  public var info:int;
  public function Test() {//конструктор значение не возвращает
  }
  public function someFunction():void {
        this.info = 1;
  }
}

Код:

public class Test {
    public var testInfo:int;

    public function Test() {
          var n:News = new News();
          n.someFunction();
          this.testInfo = n.info;
    }
}



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

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