# Args

**URL:** <https://forum.kirupa.com/t/args/276469>\
**Category:** Uncategorized\
**Created:** [November 28, 2008, 12:40am UTC](https://forum.kirupa.com/t/args/276469 "2008-11-28T00:40:47Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![ceyesuma](https://avatars.discourse-cdn.com/v4/letter/c/c68b51/32.png) [@ceyesuma](https://forum.kirupa.com/u/ceyesuma)\
**Post date:** [November 28, 2008, 12:40am UTC](https://forum.kirupa.com/t/args/276469/1 "2008-11-28T00:40:47Z")

</div>

I have two classes: one creates and loades a combobox and another class that creates and loads an UILoader .

They both work independently.

In these classes below I have the args in the UILoader class hard coded and they work.

The CBMajorComponent class should pass the fileName and the Key var’s as args.

If I try to pass the args from the CBMajorComponent class everything works under the hood but there are no images displayed in the mcContent.

Is there a reason for this?

Thanks

This is in the actions frame in the .fla

```auto

import flash.display.MovieClip;

import chromatic.load_files.UIImageComponent;
import chromatic.load_files.TLImageComponent;
import chromatic.load_files.CBMajorComponent;
import chromatic.load_files.CBMinorComponent;

var uiImageComponent:UIImageComponent=new UIImageComponent();
var tlImageComponent:TLImageComponent=new TLImageComponent();
var cbMajorComponent:CBMajorComponent=new CBMajorComponent();
var cbMinorComponent:CBMinorComponent=new CBMinorComponent();

cbMajorComponent=new CBMajorComponent();
addChild(cbMajorComponent.cbMajor);

cbMinorComponent=new CBMinorComponent();
addChild(cbMinorComponent.cbMinor);

uiImageComponent=new UIImageComponent();
mcContent.addChild(uiImageComponent.uiImage);

tlImageComponent=new TLImageComponent();
mcContent.addChild(tlImageComponent.tlImage);

```

```auto

package chromatic.load_files{
    import fl.controls.ComboBox;
    import flash.display.MovieClip;
    import flash.events.Event;
    import fl.data.DataProvider;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.net.URLRequest;
    import fl.containers.UILoader;
    

    public class CBMajorComponent extends MovieClip {

        public var cbMajor:ComboBox=new ComboBox();
        private var uiImageComponent:UIImageComponent;

        private var listURL:URLRequest=new URLRequest();
        private var dataLoader:URLLoader=new URLLoader();
        private var theXML:XML=new XML();

        private var arrayFile:Array=new Array("load_assets/keylist.xml");
        private var majorArray:Array=new Array("CMajor","GMajor","DMajor","AMajor","EMajor",
        "BMajor","FSharpMajor","CSharpMajor","FMajor",
        "BFlatMajor","EFlatMajor","AFlatMajor",
        "DFlatMajor","GFlatMajor","CFlatMajor");

        public var key:String;
        public var fileName:String;
        private var evtIndex:Number;
        private var evtItem:String;
        private var sel:Number=-1;
        
        public var testString:String;

        public function CBMajorComponent():void {
            
            init();
        }
        private function init():void {
            fileName=arrayFile[0];
            setFileName(fileName);
            

            setupComponent(fileName);
        }
        private function setupComponent(fileName):void {
            this.fileName=fileName;
            
            cbMajor=new ComboBox();
            cbMajor.setSize(200, 22);
            cbMajor.prompt = "Select a Major Key";
            cbMajor.editable=false;
            cbMajor.rowCount=15;
            cbMajor.width=110;
            cbMajor.move(0,0);
            cbMajor.x=-235;
            cbMajor.y=-150;
            addChild(cbMajor);

            
            listURL=new URLRequest(fileName);
            
            dataLoader.addEventListener(Event.COMPLETE,dataLoaded);
            dataLoader.load(listURL);
            
            theXML=new XML(listURL);
            theXML.ignoreWhitespace=true;        
            
            
            cbMajor.addEventListener(Event.CHANGE, selectedName);
            cbMajor.addEventListener(Event.CHANGE,changeEvent);
        }
        private function dataLoaded(evt:Event):void {        
            theXML=XML(dataLoader.data);
            
            for (var i:int=0; i<majorArray.length; i++) {
                key=majorArray*;                
                
                cbMajor.addItem({label:(theXML.key[key].keyName)});
            }
        }
        private function selectedName(evt:Event):void {
            evtIndex=evt.target.selectedIndex;
            key=majorArray[evtIndex];
            setKey(key);
            testString="passed froim cbMajor to uiComponent";
            
            uiImageComponent=new UIImageComponent();
            
            uiImageComponent.init();
        }
        public function changeEvent(evt:Event):void {
            trace(" You selected a key");
        }
        public function setFileName(fileName):void {

            this.fileName=fileName;
        }
        public function getFileName():String {
            return fileName;
        }
        public function setKey(key):void {

            this.key=key;
        }
        public function getKey():String {
            return key;
        }
    }
}

```

```auto

package chromatic.load_files{
    import fl.containers.UILoader;
    import flash.display.MovieClip;
    import flash.events.Event;
    import fl.data.DataProvider;
    import flash.net.URLLoader;
    import flash.net.URLRequest;
    import flash.net.*;

    public class UIImageComponent extends MovieClip {

        public var uiImage:UILoader=new UILoader();
        public var dp:DataProvider=new DataProvider();
        private var dataLoader:URLLoader=new URLLoader();
        private var theXML:XML=new XML();
        private var listURL:URLRequest=new URLRequest();

        private var arrayImage:Array=new Array();

        private var singleImage:String;
        public var key:String;
        public var fileName:String;
        private var sourceValue:String=null;
        private var evtIndex:int;
        private var evtName:String;
        private var sel:Number=-1;
        private var xmlList:XMLList;
        
        public var testString:String;

        public function UIImageComponent():void {
            init()

        }
        public function init():void {
            
            
            fileName="load_assets/keylist.xml";
            key="CMajor";
            
            this.fileName=fileName;
            this.key=key;
            
            this.testString=testString;
            setfileName(fileName);
            setKey(key);
            
            trace("ui...filename "+fileName);
            setupComponent(fileName,key); }
        public function setupComponent(fileName,key):void {
            this.fileName=fileName;
            this.key=key;
            this.testString=testString;
            
            //var mcContent=new MovieClip();

            trace(testString);
            uiImage.x=100;
            uiImage.y=-20;
            uiImage.width=190;
            uiImage.height=200;
            
            //addChild(mcContent);            
            //mcContent.addChild(uiImage);
            
            listURL=new URLRequest(fileName);

            dataLoader.addEventListener(Event.COMPLETE,dataLoaded);
            dataLoader.load(listURL);

            theXML=new XML(listURL);
            theXML.ignoreWhitespace=true;

            //dataLoader.addEventListener(Event.COMPLETE,dataLoaded);
            //uiImage.addEventListener(Event.CHANGE, selectedName);
            //uiImage.addEventListener(Event.CHANGE,changeEvent);
            //uiImage.addEventListener(Event.COMPLETE,doTrace);
            //uiImage.addEventListener(Event.RESIZE,doTrace);
        }
        function dataLoaded(evt:Event):void {
            theXML=XML(dataLoader.data);
            //key="CMajor";
            sourceValue=theXML.key[key].swfFile;
            var request:URLRequest=new URLRequest(sourceValue);
            //uiImage.addEventListener(Event.COMPLETE,loadComplete);
            uiImage.load(request);

            trace("///// ui key "+sourceValue+" //////////////////");
            uiImage.source=sourceValue;
        }
        /*
        private function selectedName():void {
        /*Combobox evt.target.setupComponent cannot have spaces (as we have).So until 
        * I learn how to rid a string of spaces thus the var key
        */

        /*this bloct to be replaced by an hotspot event
        uiImageComponent=new UIImageComponent
        
        key=concatArray[evtIndex];
        uiImageComponent.setfileName(this.fileName);
        uiImageComponent.setkey(this.key);
        uiImageComponent();
        
        }
        private function doTrace(evt:Event):void {
        trace(uiImage.width);
        uiImage.scaleContent=true;
        uiImage.maintainAspectRatio=false;
        }
        */
        private function changeEvent(evt:Event):void {
            trace(" You selected a key");
        }
        public function setfileName(fileName):void {

            this.fileName=fileName;

        }
        public function getfileName():String {
            return fileName;
        }
        public function setKey(key):void {

            this.key=key;

        }
        public function getKey():String {
            return key;
        }
    }
}

//dataLoader.addEventListener(Event.COMPLETE,dataLoaded);
//uiImage.addEventListener(Event.CHANGE, selectedName);
//uiImage.addEventListener(Event.CHANGE,changeEvent);
//uiImage.addEventListener(Event.COMPLETE,doTrace);
//uiImage.addEventListener(Event.RESIZE,doTrace);

```
