0

そのswfのサイズ変更中にステージの幅と高さを設定したいのですが、サイズ変更イベントの処理で設定しますが、機能しません。これを実現する他の方法はありますか?

 stage.addEventListener (Event.RESIZE, resizeListener);

 function resizeListener (e:Event):void {
  stage.stageWidth=500;
  stage.stageHeight=300;

 }

ありがとう

4

3 に答える 3

2

それの音によってあなたはただ必要です

 stage.align     = "";
 stage.scaleMode = StageScaleMode.NO_SCALE;

これにより、ウィンドウをどれだけ伸ばしても、コンテンツは同じサイズに保たれます。

于 2012-04-11T18:50:24.183 に答える
1
Updated:

必要なのは、コンテンツとターゲットの幅と高さの比率を比較することです。読み込まれた画像を領域内に収まるようにするには、次のようにして、すべてが内側に収まるようにスケーリングします。

    var scale:Number = Math.min( _holder.width / _loader.content.width,
                            _holder.height / _loader.content.height );
   _loader.content.scaleX = _loader.content.scaleY = scale;

これにより、すべてを確実に見ることができます。Math.min を Math.max に変更すると、次元が一致しない場合に異なる結果が得られます。

于 2012-04-12T05:03:39.100 に答える
0
 public function loaderComplete(event:Event):void
   { 
  var content:MovieClip = MovieClip(event.currentTarget.content );

  //the dimensions of the external SWF
  var _width:int = content.width;
  var _height:int = content.height;

  // you have several options here , assuming you have a container Sprite
  // you can directly set to the dimensions of your container, if any
  if( container.width < _width )
      _width = container.width // and do the same for height

  // or you could scale your content to fit , here's a simple version
  // but you can check the height too or keep checking both value
  // until it fits
  if( container.width < _width ) 
  { 
      var scale:Number = container.width / _width;
      content.scaleX = content.scaleY = scale;
  }

  }

この回答により、swati singhによって提供された以前のコードをよりよく理解できます。このリンク を参照してください。コンテナーに収まるように外部SWFのサイズを変更するにはどうすればよいですか? ありがとうございます

于 2012-04-12T10:46:20.243 に答える