0

「静的タイプflash.display:Sprite.ssd.rotation(90)}を使用して、参照を介してアクセスできないメソッド回転にアクセスしようとしました」というエラーが 表示されました。画像をダブルクリックしたときに、画像を90度回転する方法を知りたいだけです。 。

var shootingstar:Loader = new Loader();
shootingstar.load(new URLRequest("http://i51.tinypic.com/m8jp7m.png"));
shootingstar.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadingComplete);
var ssd:Sprite = new Sprite();
 function onLoadingComplete(event:Event):void
 {
    ssd.addChild( event.currentTarget.loader.content );
    ssd.addEventListener(MouseEvent.MOUSE_DOWN, drag);
    ssd.addEventListener(MouseEvent.MOUSE_UP, drop);
    ssd.addEventListener(MouseEvent.DOUBLE_CLICK, rotate)
 ssd.height=180
 ssd.width=124
 }
 function drag(event:MouseEvent):void{
     ssd.startDrag()
  }
 function drop(event:MouseEvent):void{
  ssd.stopDrag()
 }
 function rotate():void{
     ssd.rotation(90)
 }
4

2 に答える 2

3

このエラーは、ローテーション メソッドにアクセスできない、つまりプライベートまたは保護されていないことを示しています。したがって、コード ローテーション(90)のように直接呼び出すことはできません。

代わりに、回転パブリック プロパティを使用する必要があります。

    rotation = 90;

superfro が指摘しているように、MouseEvent パラメーターを必要とするrotate メソッドからもエラーが発生するはずです。だから実用的に..

function rotate(event:MouseEvent):void
{
   ssd.rotation = 90;
}

最後に、Sprite の doubleClickEnabled プロパティが true に設定されていることを確認します。

function onLoadingComplete(event:Event):void
{
   ssd.doubleClickEnabled = true;
   etc....
于 2010-11-10T05:34:36.013 に答える
0

試しましたssd.rotation = 90;か?

于 2010-11-10T04:53:35.043 に答える