Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 AS3中的组合框“吃”最后一个字母_Actionscript 3_Flash - Fatal编程技术网

Actionscript 3 AS3中的组合框“吃”最后一个字母

Actionscript 3 AS3中的组合框“吃”最后一个字母,actionscript-3,flash,Actionscript 3,Flash,我对flash组件组合框有问题。当我习惯于在组合框中保存一个名字时,它总是没有最后一个字母 代码如下: var input_name:String; text_field.addEventListener (TextEvent.TEXT_INPUT, text_input); button.addEventListener (MouseEvent.CLICK, save); function save (e:MouseEvent):void {

我对flash组件组合框有问题。当我习惯于在组合框中保存一个名字时,它总是没有最后一个字母

代码如下:

    var input_name:String;
    text_field.addEventListener (TextEvent.TEXT_INPUT, text_input);
    button.addEventListener (MouseEvent.CLICK, save);
    function save (e:MouseEvent):void
    {
      text_field.visible = true;
      text_field.adddEventListener(KeyboardEvent.KEY_DOWN, save_text);
    }

    function text_input(e:TextEvent):void
      {
        input_name = text_field.text;
      }

    function save_text(e:KeyboardEvent):void
    {
       var keyPressed:String = e.keyCode.toString();
       if (keyPressed == "13")
        {
           combo.addItem({label:input_name, data:input_name});
        }
     }
所以,当我在文本字段中输入'foo'并按enter键时,它只保存在组合框中的'fo'

答案的Thx:

TextEvent.TEXT\u在值更改之前发送输入

值更改后将调度Event.CHANGE

这将起作用,包括处理回车键

抱歉,这是您正在查找的事件更改。
import flash.events.MouseEvent;
import flash.events.Event;

var input_name:String;

text_field.addEventListener(Event.CHANGE, text_input);
text_field.addEventListener("enter", save);
button.addEventListener(MouseEvent.CLICK, save);

function text_input(e:Event):void
{
    input_name = text_field.text;
}

function save(e:*):void
{
    text_field.visible = true;
    combo.addItem({label:input_name, data:input_name});
}