-1

XMLボタンメニューのremoveChildに問題がありますリンケージを使用してライブラリからボタンtempを呼び出すと、ここにコードを記述します

        var genButton:butonProba;

    var i:uint = 0;

    for each (var page:XML in generacijeXML.gener.generation) {

        genButton = new butonTest();    

        genButton.butonText.text = page.@name;

        genButton.source = page.source.toString();

        genButton.butonText.autoSize = TextFieldAutoSize.LEFT;

        genButton.x = 16 + i*225;
        genButton.y = -30;

        genButton.buttonMode = true;
        genButton.mouseChildren = false;

        addChild(genButton);

        i++;
}

そしてすべてが正常です.....

クリックしたときにもう1つのボタンを作成したいときは、以前に呼び出したすべてのxmlボタンを削除したい

私はこのように簡単にしようとしています

close.addEventListener(MouseEvent.CLICK, closed);

  function closed(event:Event):void {
  genButton.removeChild(0);
}

この

close.addEventListener(MouseEvent.CLICK, closed);

  function closed(event:Event):void {
  removeChild(genButton);
}

しかし、うまくいきませんか?

4

1 に答える 1

0

すべてのボタンを1つのコンテナーに追加します。コンテナーをインスタンスメンバーとして作成し、コンストラクターまたはinitメソッドのステージに追加します。

 public var buttonContainer:Sprite = new Sprite();
 addChild(buttonContainer);

ループで、作成したすべてのボタンをこのコンテナに追加します。

 ...
 genButton.buttonMode = true;
 genButton.mouseChildren = false;

 buttonContainer.addChild(genButton);

 i++;

ハンドラーをクリックして、コンテナーからすべての子を削除します。

 close.addEventListener(MouseEvent.CLICK, closed);

 function closed(event:Event):void {
     while(buttonContainer.numChildren > 0 )
     {
          buttonContainer.removeChildAt(0);
     }
 }

それが役に立ったことを願っています

于 2012-05-15T20:38:19.870 に答える