使用flex填充文本框

时间:2010-10-31 11:36:50

标签: flex actionscript-3 adobe mxml mxmlc

在下面的代码中。如果按下按钮'A',则文本框应填充A,如果按下按钮'B',则应填充B等等。 可以做到这一点。如果有人能指出我的flex示例会很有帮助。谢谢..

                  s='A';
                for(i=0;i<button.length;i++)
                {
                        txtLogin.text+=s;
                        s++;
                }  

原始代码..

            <?xml version="1.0" encoding="utf-8"?>
            <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

            <mx:Button label="A" click="clickhandler(event)"  x="1" />
            <mx:Button label="B" click="clickhandler(event)"  x="101" />
            <mx:Button label="C" click="clickhandler(event)"  x="201" />
            <mx:Button label="D" click="clickhandler(event)"  x="301" />
            <mx:Button label="E" click="clickhandler(event)"  x="401" />
            <mx:Button label="F" click="clickhandler(event)"  x="501" />
            <mx:Button label="G" click="clickhandler(event)"  x="601" />
            <mx:Button label="H" click="clickhandler(event)"  x="701" />
            <mx:Button label="I" click="clickhandler(event)"  x="801" />
            <mx:Button label="J" click="clickhandler(event)"  x="901" />
            <mx:Button label="K" click="clickhandler(event)"  x="1001" />



            <mx:Script>
                    <![CDATA[
                    import mx.controls.Button;
                    import mx.controls.Alert;

                    public function clickhandler(event:Event):void
                    {

                    var button:Button=event.target as Button;
                    var i:int;
                    var s:String;
                    s='A';
                    for(i=0;i<button.length;i++)
                    {
                            txtLogin.text+=s;
                            s++;
                    }       
            /*      if (button.label=='A')
                    {
                            txtLogin.text+="A";
                            //mx.controls.Alert.show("Button1");
                    }
                    if (button.label=="B")
                    {               
                            txtLogin.text+="B";
                            //mx.controls.Alert.show("Button2");
                    }                       */
                    }
                            ]]>      

            </mx:Script>
                    <mx:TextInput x="231" y="175" id="txtLogin"/>



            </mx:Application>

1 个答案:

答案 0 :(得分:0)

要将点击按钮的字符添加到txtLogin,请将clickhandler更改为:

public function clickhandler(event:Event):void
{
    var button:Button=event.target as Button;
    txtLogin.text += button.label;
}

如果您想要替换txtLogin的内容,请使用

txtLogin.text = button.label    // = instead of +=