Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8697405
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T01:30:56+00:00 2026-06-13T01:30:56+00:00

I am trying to call a function (having two parameters) of module and assign

  • 0

I am trying to call a function (having two parameters) of module and assign values to it.
I can see the value being assigned in trace, but the same value is not displaying when it is assigned to label.

  1. If I directly assign the value to label. It says:

    Error:1009: Null object Reference

  2. If I use [Bindable] meta tag to that label, it won’t show any runtime error but the value is also not displayed. I have searched the internet and found that the [Bindable] meta tag works as try and catch blog.

How to get value display assign to label?

Main.mxml

 <?xml version="1.0" encoding="utf-8"?>
  <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"   xmlns:custom="com.custom.*" xmlns:local="*" creationComplete="onload()">
  <mx:Script>
<![CDATA[
    import modules.AModule; 
    import mx.events.ModuleEvent;
    import mx.containers.VBox;
    import mx.containers.TitleWindow;
    import mx.controls.TextInput;
    import mx.controls.Button;
    import mx.containers.HBox;
    import mx.controls.Label;
    import mx.events.CloseEvent;
    import mx.controls.Text;
    import com.custom.CustomAlert;
    import mx.controls.Alert;
    import mx.containers.Canvas;
    import mx.events.ItemClickEvent;

    import mx.core.UIComponent;

    import mx.modules.ModuleManager;
    import mx.modules.IModuleInfo;
    import mx.containers.Box;
    import mx.controls.ProgressBar;

    //private var can:Canvas;

    public var titlewin:TitleWindow = new TitleWindow();
        public var usern:TextInput = new TextInput();
        public var passw:TextInput = new TextInput();
        public var vb:VBox = new VBox();
        public var hb1:HBox = new HBox();
        public var hb2:HBox = new HBox();
        public var hb3:HBox = new HBox();
        public var nc:NetConnection;

        public var bt1:Button = new Button();

        private var pb:ProgressBar;
    private var progressContainer:Box;
    private var info:IModuleInfo;
    private var module:UIComponent = null;
    public var can:Canvas= new Canvas();
    public function onload():void
    {
            var label1:Label= new Label();
        var label2:Label= new Label();
        label1.text="Username";
        label2.text="Password ";
        hb1.addChild(label1);
        hb1.addChild(usern);
        hb2.addChild(label2);
        hb2.addChild(passw);
        vb.addChild(hb1);
        vb.addChild(hb2);           
        bt1.label="Sign In";
        hb3.addChild(vb);
        hb3.addChild(bt1);
        titlewin.addChild(hb3);

        //Title Window creation starts here
        titlewin.title="Login";

        titlewin.setStyle("paddingLeft",20);
        titlewin.setStyle("paddingRight",20);
        titlewin.setStyle("paddingTop",20);
        titlewin.setStyle("paddingBottom",20);
        titlewin.setStyle("borderThicknessBottom",0);
        titlewin.setStyle("borderThicknessLeft",0);
        titlewin.setStyle("borderThicknessRight",0);
        titlewin.setStyle("borderThicknessTop",0);
        titlewin.setStyle("cornerRadius",0);
        titlewin.setStyle("borderColor","#D20101");
        this.addChild(titlewin);
        viewStack.enabled=false;
        ctbb.enabled=false;
        bt1.addEventListener(MouseEvent.CLICK, netconn);

    }

    private function onclick():void
    {
        if(usern.text!="")
        {
    this.removeChild(titlewin);
    viewStack.enabled=true; 
    ctbb.enabled=true;
    username.text=usern.text;
        }
        else
        {
            Alert.show("Please enter Username");
        }
    }


    private function netconn(event:MouseEvent):void
    {
        nc = new NetConnection();
        nc.connect("rtmp://localhost/loginhere",usern.text);
        nc.addEventListener(NetStatusEvent.NET_STATUS, onstatushandler);

    }

    private function onstatushandler(event:NetStatusEvent):void
    {
        if(event.info.code=="NetConnection.Connect.Success")
        {
            status.text="Connected";
        onclick();  
            }


        if(event.info.code=="NetConnection.Connect.Rejected")
        {
            status.text="Rejected";
        }
        if(event.info.code=="NetConnection.Connect.Failed")
        {
                status.text="Failed";
        }
    }



    private function JoinClick(event:MouseEvent):void{

        if(viewStack.numChildren==3)
        {
            Alert.show("You Cant Add More Button","Alert");

        }

        if(viewStack.numChildren<3)
        {

        if(viewStack.numChildren<2)
        {
        can.label="Button2";
        var button1:CustomButton= new CustomButton();
        button1.label="Leave Table";
        button1.x=300;
        button1.y=200;
        var txt:Text = new Text();
        txt.text=can.label;
        txt.x=50;
        txt.y=50;
        button1.addEventListener(MouseEvent.CLICK,remove2);
        can.addChild(button1);
        can.addChild(txt);
        loadmodule();
        }
        else
        {

        can.label="Button3";
        var button2:CustomButton= new CustomButton();
        button2.label="Leave Table";
        button2.x=300;
        button2.y=200;
        button2.addEventListener(MouseEvent.CLICK,remove3);
        can.addChild(button2);
        var txt1:Text = new Text();
        txt1.text=can.label;
        txt1.x=50;
        txt1.y=50;
        can.addChild(txt1);
        }
        can.setStyle("backgroundColor","0x5EA5BA");
        viewStack.addChild(can);
        if(viewStack.numChildren>2)
        {
            viewStack.selectedIndex=2;
        }
        else
        {
        viewStack.selectedIndex=1;
        }
        }

        }


        private function remove2(event:MouseEvent):void{
        Alert.show("Do you want to Leave    Table?","Confirmation",Alert.YES|Alert.NO,this,closeAlert2);
        }
        private function closeAlert2(event:CloseEvent):void{
        if(event.detail==Alert.YES)
        {
        viewStack.removeChildAt(1);
        }

        }
        private function remove3(event:MouseEvent):void{
        if(viewStack.numChildren>2)
        {
            Alert.show("Do You want to leave Table?","Confirmation",Alert.YES|Alert.NO,this,closeAlert3);

        }
        else
        {
            Alert.show("Do you want to Leave Table?","Confirmation",Alert.YES|Alert.NO,this,closeAlert1);

        }
        }

        private function closeAlert1(event:CloseEvent):void{
            if(event.detail==Alert.YES)
            {
                viewStack.removeChildAt(1);

            }
        }
        private function closeAlert3(event:CloseEvent):void{
            if(event.detail==Alert.YES)
            {
                    viewStack.removeChildAt(2);
            }
        }


            private function loadmodule():void
    {
            pb = new ProgressBar();
            pb.labelPlacement = "center";
            pb.label = "Loading %3 %";
            progressContainer = new Box();
            progressContainer.percentWidth = 100;
            progressContainer.percentHeight = 100;
            progressContainer.setStyle("horizontalAlign", "center");
            progressContainer.setStyle("verticalAlign", "middle");
            progressContainer.addChild(pb);  
            can.addChild(progressContainer);


        var moduleUrl:String="../bin-debug/modules/useModule.swf";
        info=ModuleManager.getModule(moduleUrl);
        if(info!=null)
        {
            info.addEventListener(ModuleEvent.READY, modEventHandler);
            info.addEventListener(ModuleEvent.ERROR,modErrorHandler);
            info.load();
        }
    }



    private function modEventHandler(e:ModuleEvent):void
    {
        info.removeEventListener(ModuleEvent.READY, modEventHandler);
        info.removeEventListener(ModuleEvent.ERROR, modErrorHandler);
        can.removeAllChildren();
        if(module==null)
        {

            module = info.factory.create() as UIComponent;
            if(module!=null)
            { 
                module.x=0;
                module.y=0;
                module.percentWidth=100;
                module.percentHeight=100;
                can.addChild(module);
                 if(module is AModule)
                {

                } 
            }
        }
        }

            private function modErrorHandler(event:ModuleEvent):void {


            //cleanup and display an error alert
            info.removeEventListener(ModuleEvent.READY, modEventHandler);
            info.removeEventListener(ModuleEvent.ERROR, modErrorHandler);
            info = null;
            Alert.show(event.toString(), "Error Loading Module");

          unloadModule();
        }   
                private function unloadModule():void 
                {
           can.removeAllChildren();
            if (module != null && info != null) {
                info.addEventListener(ModuleEvent.UNLOAD,    unloadEventHandler);
                info.unload();
            }
        }

                private function unloadEventHandler(e:ModuleEvent):void 
                {
            info.removeEventListener(ModuleEvent.UNLOAD, unloadEventHandler);
            module = null;
            info = null;
                 }


]]>
  </mx:Script>

 <mx:Canvas width="700" height="400" x="166" y="32">
 <mx:ViewStack id="viewStack"  width="100%" height="100%">
    <mx:Canvas label="Button1" backgroundColor="#5EA5BA" visible="true" id="can1" >
    <local:CustomButton label="Join" click="JoinClick(event)"  x="536" y="222"/>
    <mx:Label x="304" y="120" text="Label" id="username"/>
    <mx:Label x="304" y="55" text="Label" id="status"/>
    </mx:Canvas> 
</mx:ViewStack>

 </mx:Canvas>
  <custom:CustomControlBar x="166" y="423" id="ctbb">
  <custom:CustomToggleButtonBar  dataProvider="viewStack"/>
  </custom:CustomControlBar>

  </mx:Application>

useModule.mxml

  <?xml version="1.0" encoding="utf-8"?>
 <mx:Module xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="508"  height="218" implements="modules.AModule" backgroundColor="#F00F0F"  creationComplete="addlabel();">
<mx:Script>
    <![CDATA[
        import mx.core.Application;

        public var logsin:loginhere = new loginhere();
        public function addlabel():void
        {
            lb1.text=logsin.username.text;
            txt3.text=logsin.username.text;
            trace(txt3.text);
            trace(lb1.text);
        }


    ]]>
</mx:Script>

    <mx:TextInput id="txt3" x="30.5" y="10" width="79"/>
    <mx:Label id="lb1" x="31.5" y="40" width="78" text="Will it Change?"/>
</mx:Module> 

AModule.as (Its an interface)

package modules
{  
import flash.events.IEventDispatcher;

public interface AModule extends IEventDispatcher
{
    function addlabel():void;
}
}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T01:30:57+00:00Added an answer on June 13, 2026 at 1:30 am

    I haven’t looked through the entire code, but one thing I noticed is that you should pass the values on as parameters to the child components and use data binding to dynamically update parameters.

    So in AModule.as:

    <mx:Module xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="508"  height="218" implements="modules.AModule" backgroundColor="#F00F0F"  creationComplete="addlabel();">
    <mx:Script>
        <![CDATA[
            import mx.core.Application;
    
            public var logsin:loginhere = new loginhere();
    
            [Bindable]
            public var username:String = "";
        ]]>
    </mx:Script>
    
        <mx:TextInput id="txt3" text="{username}" x="30.5" y="10" width="79"/>
        <mx:Label id="lb1" text="{username}" x="31.5" y="40" width="78" text="Will it Change?"/>
    </mx:Module> 
    

    In the method where you create the module you can then:

    module.username = //var that holds username;
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm having a weird issue with a function I'm trying to call from within
I'm having problems trying to call a Javascript function from an enqueued javascript file
I'm trying to call a function present in one class from another class by
I am trying to call c# function from javascript the code i have tried
I'm trying to call a function called animateRight in a file called ScanAnimation.m from
I am trying to call a function, but am running into some struggles with
I'm trying to call a function in a Python script from my main C++
I'm trying to call a function from a form within the same .php file,
I'm trying to call a function that contains jQuery code. I want this function
I'm trying to call a function, and VS gives me an error (red underline),

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.