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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.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 Keep getting TypeError:Error#2007:参数子项必须为非null。ActionScript3.0_Actionscript 3_Flash_Actionscript - Fatal编程技术网

Actionscript 3 Keep getting TypeError:Error#2007:参数子项必须为非null。ActionScript3.0

Actionscript 3 Keep getting TypeError:Error#2007:参数子项必须为非null。ActionScript3.0,actionscript-3,flash,actionscript,Actionscript 3,Flash,Actionscript,我不断地发现这个错误: TypeError: Error #2007: Parameter child must be non-null. at flash.display::DisplayObjectContainer/addChild() at ChristmasGame_fla::MainTimeline/frame4() at flash.display::MovieClip/gotoAndStop() at ChristmasGame_fla::MainTimeline/onClick

我不断地发现这个错误:

TypeError: Error #2007: Parameter child must be non-null.
at flash.display::DisplayObjectContainer/addChild()
at ChristmasGame_fla::MainTimeline/frame4()
at flash.display::MovieClip/gotoAndStop()
at ChristmasGame_fla::MainTimeline/onClickMenu2()
我有一个使用Actionscript添加childs的框架。此菜单中有7个级别,每个级别在单击时使用gotoAndStop()播放所选级别

如果我选择level1,这很好,但是任何2-7都会给出上面的错误。不知道为什么,需要帮忙吗

下面的代码非常混乱:错误解决后将被清除

stop();

var day1click:Day1Click = new Day1Click();
var day2click:Day2Click = new Day2Click();
var day3click:Day3Click = new Day3Click();
var day4click:Day4Click = new Day4Click();
var day5click:Day5Click = new Day5Click();
var day6click:Day6Click = new Day6Click();
var day7click:Day7Click = new Day7Click();
var menubg:MenuBG = new MenuBG();
var menutitle:MenuTitle = new MenuTitle();

addChild(menubg);
addChild(menutitle);
menutitle.x = 338.80;
menutitle.y = 71.25;
addChild(day1click);
day1click.x = 332.80;
day1click.y = 208.5;
addChild(day2click);
day2click.x = 567.80;
day2click.y = 208.50;
addChild(day3click);
day3click.x = 796.80;
day3click.y = 208.50
addChild(day4click);
day4click.x = 334.80;
day4click.y = 362.10;
addChild(day5click);
day5click.x = 567.80;
day5click.y = 362.95;
addChild(day6click);
day6click.x = 797.80;
day6click.y = 362.95;
addChild(day7click);
day7click.x = 567.80;
day7click.y = 506.75

day1click.addEventListener(MouseEvent.CLICK, onClickMenu1);
function onClickMenu1(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day1');
}

day2click.addEventListener(MouseEvent.CLICK, onClickMenu2);
function onClickMenu2(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day2');
}

day3click.addEventListener(MouseEvent.CLICK, onClickMenu3);
function onClickMenu3(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day3');
}

day4click.addEventListener(MouseEvent.CLICK, onClickMenu4);
function onClickMenu4(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day4');
}

day5click.addEventListener(MouseEvent.CLICK, onClickMenu5);
function onClickMenu5(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day5');
}

day6click.addEventListener(MouseEvent.CLICK, onClickMenu6);
function onClickMenu6(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day6');
}

day7click.addEventListener(MouseEvent.CLICK, onClickMenu7);
function onClickMenu7(event:MouseEvent):void{
    removeChild(menubg);
    removeChild(menutitle);
    removeChild(day1click);
    removeChild(day2click);
    removeChild(day3click);
    removeChild(day4click);
    removeChild(day5click);
    removeChild(day6click);
    removeChild(day7click);
    day1click.removeEventListener(MouseEvent.CLICK, onClickMenu1);
    day2click.removeEventListener(MouseEvent.CLICK, onClickMenu2);
    day3click.removeEventListener(MouseEvent.CLICK, onClickMenu3);
    day4click.removeEventListener(MouseEvent.CLICK, onClickMenu4);
    day5click.removeEventListener(MouseEvent.CLICK, onClickMenu5);
    day6click.removeEventListener(MouseEvent.CLICK, onClickMenu6);
    day7click.removeEventListener(MouseEvent.CLICK, onClickMenu7);
    gotoAndStop('day7');
}

跟踪调用addChild()的每个项目

例如:


唯一的例外是帮助不大。你能发布你创建这个多级菜单的代码吗?当然它很混乱,我会在我工作后清理它。请检查我对主帖子的编辑:您仅在主画布中添加菜单级别2、3、4等,即此.add(),但不是嵌套方式。i、 e.菜单级别2不在菜单级别2内。这就是你想做的吗?或者你需要在级别1下添加级别2,以此类推。本质上,它们都是要同时显示的,下面是它的视觉效果:最后一个问题……当你点击第1天,然后点击第2天,你会得到这个异常。点击第2天按钮,然后点击第1天,你会得到相同的错误。如果是这样,那么我有解决办法。请让我知道。
var childInstance:DisplayObject;
trace(childInstance);// if you see null then issue is found
addChild(childInstance);