سؤال

لدي فصل درس أتم إنشاءه في الإنشاء الكامل:

public var catalog : AppCollection = new AppCollection (catalogStrip);

CatalogStrip هو Hox.

في هذا الفصل ، أقوم بإنشاء Vbox وأضفه كطفل إلى CatalogStrip. هنا هو مُنشئ الفصل المذكور:

public function AppCollection (_container : HBox) {
    this.container = _container;
}

وهنا الكود الذي أواجه مشكلة في:

public function populate (e : ResultEvent) : void {
    var appImage : Image = new Image ();
    var appText : Text = new Text ();
    var appContainer : VBox = new VBox ();

    appImage.source = "./res/Halo.png";
    appImage.width = 70;
    appImage.height = 70;

    appText.text = "Halo 4";

    appContainer.width = 110;
    appContainer.height = 125;
    appContainer.addChild (appImage);
    appContainer.addChild (appText);

    tbox = appContainer;

    this.container.addChild (appContainer);
}

على السطر الأخير ، يقول أن هذا. غير ممكن! أضفته في المنشئ! علاوة على ذلك ، حاولت أيضًا إنشاء إنشاء main.mxml والوصول إلى الحاوية من هناك. عندما أجرب نفس الرمز من علامة نصية في Main.mxml ، فإنه يعمل ، لكن هذا يقتل بيت القصيد من وجود الفصل هناك في المقام الأول. كيف يمكنني الوصول إلى علامات MXML من فئة خارجية؟ لدي كل وارداتي وكل شيء ...

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

المحلول

public var catalog : AppCollection = new AppCollection (catalogStrip);

هل في الجزء السينمائي من main.mxml؟ إذا كان الأمر كذلك ، فهذا هو السبب في أنك تحصل على كائن فارغ. تحتاج إلى أن يكون لديك طريقة:

public var catalog : AppCollection;

private function handleCreationComplete():void
{
    this.catalog = new AppCollection(catalogStrip);
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top