0

我正在开发发票系统。我需要通过addchild方法动态添加发票项目,如下所述

1.选择产品(组合框)--数量(文本框)--价格(文本框)--总计(文本框)

2.选择产品(组合框)--数量(文本框)--价格(文本框)--总计(文本框)

我的问题是我不能带来每个子元素的所有总文本框的总和..

如何指向或引用动态创建的项目????

4

2 回答 2

1

或者您可以创建参考对象,例如:

class Bind {
   public var target:Object;
   public var key:String;

   public function Bind(t:Object , k:String){
      target = t;
      key = k;
   }
   public function get value():* {
      return target[key];
   }
}

var myItem:SomeClass;
myItem.param = 100;
var bind:Bind = new Bind(myItem,"param");

trace("get myItem value:", bind.value);
于 2012-11-09T12:34:26.353 回答
1

您可以将所有创建的项目存储在一个数组(或向量)中,然后通过一个循环访问它们中的每一个。

例如:

var allPrices:Array = [15.50, 20.24, 36.12];

var allElements:Array = new Array();

for (price in prices) {

      // PriceText class is, for example, a movieclip with a textbox inside
      var obj:PriceText = new PriceText(price);

      addChild(obj);

      allElements.push(obj);

}

allElements现在您已经在数组中添加了所有元素。

于 2012-11-09T11:37:54.087 回答