【问题标题】:1136: Incorrect number of arguments. Expected 0 AS3 Flash CS61136:参数数量不正确。预期 0 AS3 闪存 CS6
【发布时间】:2013-03-29 03:30:56
【问题描述】:

main.as

package{
    import flash.display.*;
    import flash.events.Event;

    public class main extends MovieClip{

        public function main(){
            changeState(null,"menu");
        }
        public function changeState( CurrentState, NextState){
            if(CurrentState != null){
                removeChild(CurrentState);
            }
            if(NextState == "menu"){
                var mm:mainMenu = new mainMenu(changeState);
                addChild(mm);
            }
            else if(NextState == "game"){
                var g:CollapsingBlocks = new CollapsingBlocks(changeState);
                addChild(g);
            }
            else if(NextState == "exit"){

            }
        }
    }
}

maniMenu.as

package{
    import flash.display.*;
    import flash.events.MouseEvent;
    import flash.events.Event;

    public class mainMenu extends MovieClip{

        var theCallBackFunction:Function;
        public function mainMenu(callBack){
            var btnPlay:mmPlay = new mmPlay();
            btnPlay.addEventListener(MouseEvent.MOUSE_DOWN, btnP_Button);
            btnPlay.x=width/2=btnPlay.width/2;
            btnPlay.y=height/2=btnPlay.height/2;
            addChild(btnPlay);

            var btnExit:mmExit = new mmExit();
            btnExit.addEventListener(MouseEvent.MOUSE_DOWN, btnE_Button);
            btnExit.x=width/2=btnExit.width/2;
            btnExit.y=height/2=btnExit.height/2;
            btnExit.y + btnExit.height + 4;
            addChild(btnExit);

            theCallBackFunction = callBack;
        }
        public function btnP_button(e:MouseEvent){
            theCallBackFunction (this, "game");
            return;
        }
        public function btnE_button(e:MouseEvent){
            theCallBackFunction (this, "exit");
            return;
        }
    }
}

CollapsingBlock.as

..
public function startCollapsingBlocks(callBack) {
..

如何解决这个问题? (错误 1136),我使用的是 Flash CS6 版本。游戏文件名为 CollapsingBlocks.fla,主函数名为 startCollapsingBlocks,我在这里尝试制作简单的 Flash 游戏菜单,有 2 个按钮(播放和退出)。

【问题讨论】:

    标签: flash flash-cs6 flash-cs5


    【解决方案1】:

    0 个预期参数意味着您在函数括号内添加了一些非预期的示例:

        function mainMenu(callBack) //this is a 1 argument expected answer
        function mainMenu();        this expects no expected arguments
    

    请检查您要求函数的位置,您会发现函数说明/参数应为 0;

    否则你已经为这个函数定义了零周长/参数

    【讨论】:

    • 0 个预期参数意味着定义包含 0 个参数,并且您使用一个或多个参数调用它而不是定义的参数。
    • OP 的函数已经需要 0 个参数。你的建议说他应该改变一个函数,期望一个参数不需要任何参数。这是错误的。
    • 我回答的第一行说主菜单功能,即 1 的示例,第二个示例显示了一个功能,显示了 0 的示例,此功能是预期 0,例如:bob(); //正好就是 bob();
    【解决方案2】:

    看起来你正在调用一些不需要参数的函数,但你正在给它参数。从您的代码中,它唯一可以是 theCallBackFunction (this, "game");theCallBackFunction (this, "exit"); ,因为它们是唯一的运行时引用

    检查 theCallBackFunction 的值是否始终是需要 2 个参数的函数。

    【讨论】:

    • @joshua,报复性的投票不受欢迎,而且非常幼稚。也就是说,在他的代码中,他使用 2 个参数调用该函数。因此,请检查函数定义是否没有拼写错误 - 定义时没有参数
    • 对不起,你说他提出了两个论点,这就是我投反对票的原因
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-20
    • 2017-05-17
    • 1970-01-01
    相关资源
    最近更新 更多