私は AS3 でクラスを使用して追加するのは初めてです。これまでのところ、映画のフレーム 1 ですべてを行ってきました。私は最終的にクラスを学ぶべきだと考えたので、ここに行きます:) 画面にオブジェクトを追加するとき、後で使用するためにそれらをコンテナオブジェクトにグループ化するのが好きです。だから私は構築中の Hex のボードを持っており、それらをステージ上にある hexContainer という名前の MovieClip に入れようとしています。通常のようにこのコードを実行していた場合、hexContainer.addChild(tempHex) を実行するだけです。ただし、これによりエラー 1120 がスローされます。
私のクラスコードは次のとおりです。
package
{
import flash.display.MovieClip
import Hex
import flash.display.Stage
public class Boards extends Hex
{
public function buildBoardOne()
{
for(var i:int = 1; i <= 5; i++)
{
var tempHex:Hex = new Hex();
tempHex.x = 100;
tempHex.y = 100;
hexContainer.addChild(tempHex);
}
}
}
}
最初にこれらをステージに追加しただけで、それを行ったときにエラーが発生しました。そのため、インポートステートメントが存在します。理由を理解するためにグーグルでチェックしましたが、それが彼らがするように言ったことです。
さて、これらをステージに追加すると、うまくいきました。私は自分のヘックスを手に入れて操作することができ、私たちはパーティーをしました。それは素晴らしい時間でした. 彼らをコンテナムービークリップに入れようとしている今、彼らは私にかなり怒っていて、私は彼らをなだめることができません:p
皆さんが私に与えることができるどんな助けも大歓迎です。
OkayGraphics が提案したものをテストするために編集されたコード:
package
{
import flash.display.MovieClip
import Hex
import flash.display.Stage
public class Boards extends Hex
{
var hexContainer:MovieClip = new MovieClip();
stage.addChild(hexContainer);
public function buildBoardOne()
{
for(var i:int = 1; i <= 5; i++)
{
var tempHex:Hex = new Hex();
tempHex.x = 100;
tempHex.y = 100;
stage.addChild(tempHex);
}
}
}
}