【问题标题】:Check Input Text Match Flash Not Working检查输入文本匹配 Flash 不工作
【发布时间】:2014-04-14 07:02:37
【问题描述】:

谁能帮帮我,告诉我为什么这不起作用??

stage.addEventListener(Event.ENTER_FRAME,check);
function check(e:Event){
    if(input.text=="abc"){
        trace("yes");
    }
}

在“input”输入文本字段中输入“abc”后应跟踪“yes”。

更新:

此代码出于某种原因有效

input.text="abc";
stage.addEventListener(Event.ENTER_FRAME,check);
function check(e:Event){
    if(input.text=="abc"){
        trace("yes");
    }
}

即使在文本字段中输入“abc”后没有跟踪“yes”。

【问题讨论】:

  • 我刚刚尝试了您的代码,它按预期工作。我会仔细检查以确保您正确命名了 TextInput 组件(输入)。还要确保将电影发布到 ActionScript 3。您可能还想尝试重新启动计算机,有时 Flash 会混淆。
  • @user3277549 文本字段是输入类型,并且它正在作为 AS3 文件发布。我完全不知道为什么它不起作用。 Flash 最近对我来说表现得很奇怪。
  • 出于调试目的,在 if 语句之前添加它并告诉我们它输出了什么:trace(input.text);
  • 跟踪的工作方式与@Pikamander2 应有的一样。我不明白为什么代码不起作用。

标签: actionscript-3 flash


【解决方案1】:

我认为没有理由不这样做。任何方式,你都可以尝试在文本字段中添加 Event.CHANGE 事件(必须输入),当用户改变输入值时会触发该事件。

在处理程序中,您可以跟踪文本字段的值并检查发生了什么。

【讨论】:

  • 我喜欢你对 Event.CHANGE 的想法,但我也不知道为什么它不起作用。我还不能尝试跟踪文本字段,因为我目前无法访问 Flash,但我会在下一个机会时试一试。
  • 我快疯了。我使用以下代码开始了一个新的 AS3 文件:stage.addEventListener(Event.ENTER_FRAME,check);功能检查(e:事件){跟踪(输入。文本); if(input.text=="abc"){ trace("yes"); } } 和一个实例名称为“input”的输入文本字段,它仍然不起作用!!!!!
  • 它正在跟踪“abc”,但它仍然不会跟踪是
【解决方案2】:

问题已解决,由于某种原因,每当我在 Flash 上创建输入文本字段时,它都会以额外的一行开始。其他人也遇到过这个问题: http://forums.adobe.com/thread/1008860 http://www.codingforums.com/flash-actionscript/262088-removing-extra-line-multiline-input-text-as3.html 我一直想知道为什么跟踪会在“abc”之后添加另一条神秘的线,这就是原因。经过两天的努力,我终于弄明白了。可以通过以下方式解决此问题:

input.text="";

或者通过将文本字段类型设置为单行。

【讨论】:

    猜你喜欢
    • 2018-03-12
    • 1970-01-01
    • 1970-01-01
    • 2018-01-04
    • 2012-11-21
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多