1

flash.Lib.Current.CreateEmptyMovieClip()ディスクベースの画像のスライドショーを作成するために使用する古いAS2スタイルのHaxeコードがあります。各画像を保持するための新しいクリップを作成し、各画像をアルファレベルでフェードインおよびフェードアウトします。

でコンパイルすると-swf -swf-version 8、SWFファイルが正常に作成され、これはブラウザで機能します。

しかし、私はこれをに変換する過程にあり、もはやそのメソッドを持っていないことが-swf9わかりました。MovieClip

Haxe(AS3スタイル)で一連の画像をどのようにロードしますか?

コードは、その価値のために、次の行に沿っています。

static function main() {
  mc = flash.Lib.current;
  var clip : MovieClip;

  clip = mc.createEmptyMovieClip ("clip_000", mc.getNextHighestDepth());
  clip.loadMovie ("demo_img000.jpg");

  : : :
4

1 に答える 1

7

次のように、ライブラリ内のクリップにリンクせずに、新しい表示オブジェクトを作成できます。

var sprite:Sprite = new Sprite() // -- creates a sprite
var clip:MovieClip = new MovieClip() // -- creates a movie clip

addChild()次に、次のメソッドを使用して、それを別の表示オブジェクトに追加できます。

myOtherClip.addChild( sprite )

上記の行は、を使用するのと同じように、新しいクリップをディスプレイリストの一番上に追加しますgetNextHighestDepth()

他の2つのクリップの間に深さのあるクリップを追加する場合は、次を使用できます。

myOtherClip.addChildAt( movieClip, 2 ); // -- adds a clip at 2 levels up from 0

画像の読み込みに関しては、AS3にはloadMovieが存在しません。次のようなLoaderオブジェクトとURLRequestオブジェクトを使用する必要があります。

var loader:Loader = new Loader();
var request:URLRequest = new URLRequest( 'path_to_my_image.jpg' );
loader.addEventListener( Event.COMPLETE, onLoadComplete );
loader.load( request );

function onLoadComplete( event:Event ):void
{
     if( loader.content ){
         clip.addChild( loader.content )
     }
}
于 2010-09-02T14:29:47.467 に答える