首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActionScript误差

ActionScript误差
EN

Stack Overflow用户
提问于 2014-05-30 03:10:30
回答 2查看 31关注 0票数 0

我正在做按钮,所以当它被按下,它将调用一个函数,它将出现一个错误的答案文本或一个正确的答案文本,这一切似乎都是正确的,但我有这个讨厌的错误。1084:语法错误:在Button之前期望正确。我不知道问题出在哪里。

这是我的密码。我会感谢所有的帮助。谢谢。

代码语言:javascript
复制
    stop();

myWelcome.text = "Hello, " + myName;

btn81.addEventListener(MouseEvent.MOUSE_UP,81Button){
    function 81Button (evt:Event):void{
    wrongAnswer();
}
}



btn85.addEventListener(MouseEvent.MOUSE_UP,85Button){
    function 81Button (evt:Event):void{
    wrongAnswer();
}
}


btn91.addEventListener(MouseEvent.MOUSE_UP,91Button){
    function 91Button (evt:Event):void{
    rightAnswer();
}
}



btn95.addEventListener(MouseEvent.MOUSE_UP,95Button){
    function 81Button (evt:Event):void{
    wrongAnswer();
}
}




function wrongAnswer (evt:Event):void{
    feedback.text = "wrong";
    noSound.play();
}
function yesSound (evt:Event):void{
    feedback.text = "Correct";
    yesSound.play();
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-30 07:03:17

您还可以使用匿名函数。

例如,您的代码:

代码语言:javascript
复制
btn81.addEventListener(MouseEvent.MOUSE_UP,81Button){
    function 81Button (evt:Event):void{
    wrongAnswer();
}
}

可转换为:

代码语言:javascript
复制
btn81.addEventListener(MouseEvent.MOUSE_UP, function(event:Event):void {
    wrongAnswer();
});
票数 1
EN

Stack Overflow用户

发布于 2014-05-30 06:58:55

首先,您需要更改代码,它看起来并不复杂。

  • 函数名不应以数字开始,将81 button81改为button81。
  • 使用mouseDown而不是mouseUp。

我给你换了密码

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                       xmlns:s="library://ns.adobe.com/flex/spark" 
                       xmlns:mx="library://ns.adobe.com/flex/mx"
                       creationComplete="init(event)">
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>

    <fx:Script>
        <![CDATA[
            import mx.events.FlexEvent;

            function button81 (evt:MouseEvent):void
            {
                wrongAnswer();
            }


            function button85 (evt:MouseEvent):void
            {
                rightAnswer();
            }



            function button91 (evt:MouseEvent):void
            {
                wrongAnswer();
            }

            function button95 (evt:MouseEvent):void
            {
                rightAnswer();
            }

            private function wrongAnswer():void
            {
                trace('Wrong');
            }

            private function rightAnswer():void
            {
                trace('Right');
            }

            protected function init(event:FlexEvent):void // creation complete
            {
                btn81.addEventListener(MouseEvent.MOUSE_UP,button81);
                btn85.addEventListener(MouseEvent.MOUSE_UP,button85);
                btn91.addEventListener(MouseEvent.MOUSE_UP,button91);
                btn95.addEventListener(MouseEvent.MOUSE_UP,button95);

            }

        ]]>
    </fx:Script>
    <s:HGroup>
        <s:Button id="btn81" label="81"/>
        <s:Button id="btn85" label="85"/>
        <s:Button id="btn91" label="91"/>
        <s:Button id="btn95" label="95"/>
    </s:HGroup>
</s:WindowedApplication>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23946412

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档