Actionscript 3.0 تدوير صورة ، بنسبة 90 درجة ، تم تحميلها من عنوان URL

StackOverflow https://stackoverflow.com/questions/4141309

سؤال

لقد تعرضت لخطأ في قول "محاولة الوصول إلى دوران الطريقة التي يتعذر الوصول إليها من خلال مرجع بنوع ثابت.أريد فقط أن أعرف كيفية تدوير صورتي بمقدار 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)
 }
هل كانت مفيدة؟

المحلول

يشير الخطأ إلى أن طريقة الدوران لا يمكن الوصول إليها ، أي ، خاصة أو محمية. لذلك لا يمكنك تسميته مباشرة كما في دوران الرمز (90).

بدلاً من ذلك ، يجب أن تستخدم خاصية التناوب العامة

    rotation = 90;

كما يشير Superfro ، يجب عليك أيضًا الحصول على خطأ من طريقة الدوران التي تتطلب معلمة mouseevent. عمليا ..

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

أخيرًا ، تأكد من أن الخاصية doubleClekEnabled من العفريت تم ضبطها على صحيح

function onLoadingComplete(event:Event):void
{
   ssd.doubleClickEnabled = true;
   etc....

نصائح أخرى

هل جربت ssd.rotation = 90; ?

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top