# Dynamically Attaching Components

**URL:** <https://forum.kirupa.com/t/dynamically-attaching-components/249543>\
**Category:** flash\
**Created:** [January 19, 2008, 11:21pm UTC](https://forum.kirupa.com/t/dynamically-attaching-components/249543 "2008-01-19T23:21:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pherank](https://avatars.discourse-cdn.com/v4/letter/p/4af34b/32.png) [@Pherank](https://forum.kirupa.com/u/Pherank)\
**Post date:** [January 19, 2008, 11:21pm UTC](https://forum.kirupa.com/t/dynamically-attaching-components/249543/1 "2008-01-19T23:21:00Z")

</div>

I’m attaching some label components dynamically using attachMovie(); and I’m finding that I can’t assign text to the label fields at the same time - the text won’t show up because the components are slow to initialize. I want to avoid spreading actionscript across frames. Is there any way to add an event listener for initialization?

```auto

var elemSharedObject:SharedObject = SharedObject.getLocal("elementChoices", "/");
//
var count:Number = 0;
//
if (elemSharedObject.data.elemArray_1 != undefined) {
    var yPos:Number = 27*count;
    _root.table_mc.attachMovie("display_mc","display1_mc",count,{_x:0, _y:yPos});
    _root.count++;// Now increment _root.count
    // Assign data to these fields
    table_mc.display1_mc.p_lb.text = elemSharedObject.data.elemArray_1[0];
    trace(elemSharedObject.data.elemArray_1[0]);// OUTPUT: 51-02-121
    table_mc.display1_mc.i_lb.text = elemSharedObject.data.elemArray_1[1];
    table_mc.display1_mc.el_lb.text = elemSharedObject.data.elemArray_1[2];
    table_mc.display1_mc.en_lb.text = elemSharedObject.data.elemArray_1[3];
}
if (elemSharedObject.data.elemArray_2 != undefined) {
    var yPos:Number = 27*count;
    _root.table_mc.attachMovie("display_mc","display2_mc",count,{_x:0, _y:yPos});
    _root.count++;// Now increment _root.count
    // Assign data to these fields
    table_mc.display2_mc.p_lb.text = elemSharedObject.data.elemArray_2[0];
    table_mc.display2_mc.i_lb.text = elemSharedObject.data.elemArray_2[1];
    table_mc.display2_mc.el_lb.text = elemSharedObject.data.elemArray_2[2];
    table_mc.display2_mc.en_lb.text = elemSharedObject.data.elemArray_2[3];
}
if (elemSharedObject.data.elemArray_3 != undefined) {
    var yPos:Number = 27*count;
    _root.table_mc.attachMovie("display_mc","display3_mc",count,{_x:0, _y:yPos});
    _root.count++;// Now increment _root.count
    // Assign data to these fields
    table_mc.display3_mc.p_lb.text = elemSharedObject.data.elemArray_3[0];
    table_mc.display3_mc.i_lb.text = elemSharedObject.data.elemArray_3[1];
    table_mc.display3_mc.el_lb.text = elemSharedObject.data.elemArray_3[2];
    table_mc.display3_mc.en_lb.text = elemSharedObject.data.elemArray_3[3];
}

```
