سؤال

أريد تحميل SWF في تطبيق Flex 4 من أجل استخدام فصوله.

var ldr:Loader=new Loader();
ldr.load(new URLRequest("file://path/to/fileswf"));
ldr.contentLoaderInfo.addEventListener(Event.INIT, loaded);
function loaded(evt:Event):void { addChild(ldr); }

أتلقى الخطأ:

خطأ: AddChild () غير متوفر في هذه الفئة. بدلا من ذلك، استخدم الابطال () أو تعديل الجلد، إذا كان لديك واحدة.
في Spark.components.supportcoprasses :: SkinnableComponent / Addchild () [E: dev gumbo_beta2 Fitrams المشاريع Spark SRC Spark Companents SupportClasses SkinnableComponent.as: 966
في Main / Private: Init / تحميل () [C: المستندات والإعدادات UFK Adobe Flash Builder Beta 2 XPoGames-Toolkit-Test Src main.mxml: 22

إذا قمت بتغيير addChild() ل addElement(), ، أتلقى خطأ التجميع التالي:

1067: إكراه ضمنية قيمة من النوع Flash.DisPlay: Loader إلى نوع MX.Core غير صحيحة: Ivisualelement. MAIN.MXML مسار / خط DIR 22 FLEX مشكلة

أي أفكار كيفية حل هذه المشكلة؟

هل كانت مفيدة؟

المحلول 2

حسنا في Flash Builder 4 النسخة الكاملة، لا يوجد أي هذا.

سيكون أفضل نهج لحل المشكلة هو تحويل كل فئة مطلوبة إلى مكون فليكس واستخدامه في تطبيق Flex الخاص بك:

  1. قم بتنزيل وتثبيت Kit Flex Component Kithttp://www.adobe.com/cfusion/entitlement/index.cfm؟e=flex_skins.

  2. إنشاء مقطع فيلم

  3. تحويل إلى مكون المرن

  4. أضف الوظائف ذات الصلة إلى هذه الفئة

وهي عبارة عن هيكل عظمي لفئة مرتبطة بعنوان movieclip على وشك تحويلها إلى مكون فليكس:

package {
import mx.flash.UIMovieClip;
import flash.text.TextField;
import flash.events.Event;
import flash.events.MouseEvent;
public dynamic class challenge_screen extends UIMovieClip {

    public function challenge_screen() {
        super();
    }
}
} 

نصائح أخرى

قم بإنشاء حاوية أخرى لوضع DisplayObject في:

// container ( IVisualElement ) for DisplayObjects
var container:UIComponent = new UIComponent();
addElement( container );

// displayObject goes to container
var displayO:Sprite = new Sprite();
container.addChild( displayO );
private var _loader:SWFLoader = new SWFLoader();
private var _uicomponent:UIComponent = new UIComponent();
private function swfLoaded(event:Event):void 
{
Alert.show("inside swf Loaded");
var content:DisplayObject =_loader.content;
_uicomponent.addChild(content);
} 
public function loadSWF () : void 
{   

_loader.addEventListener(Event.INIT, swfLoaded);
_loader.load("http://intelliveysoft.com:5080/myelearn/Admin.swf"); 
addElement(_uicomponent);
}

جرب هذا. سوف تعمل

this.rawchildren.addchild (LDR) يجب أن تعمل

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