找回密码
 立即注册

为什么变量会被重复赋值(初始化)

[复制链接]
发表于 2014-4-15 11:21:41 | 显示全部楼层 |阅读模式
主要是firstNum
var yname:Array = ["ya1","ya2","ya3","ya4","ya5","ya6","ya7","ya8"];
var Yname:Array = ["Ya1","Ya2","Ya3","Ya4","Ya5","Ya6","Ya7","Ya8"];
//主要是这个firstNum我看不懂他在后面程序执行中为什么是0
var firstNum:int;
var secondNum:int =  7* Math.random();
this.addEventListener(MouseEvent.CLICK,clickF);
function clickF(event:MouseEvent){



        //第二个随机数不能和第一个相同,也不能比第一个随机数小1否则与前一个相邻
        
        switch(secondNum)
{
case firstNum:
trace("重复,重新选择");
secondNum=  7* Math.random();
break;
case firstNum-1:
trace("相邻,重新选择");
secondNum=  7* Math.random();
break;
default:
//yname[firstNum]是个字符串,[yname[firstNum]]才是实例名称
        var type:Class = getDefinitionByName(Yname[secondNum]) as Class;//如Flash.display.Sprite;
        //生成新的实例
        var mycode = new type();
mycode.width =this.parent[yname[secondNum]].width;
        mycode.height = this.parent[yname[secondNum]].height;
        this.parent.addChild(mycode);
        //为什么在这里firstNum一直是0
trace(firstNum,secondNum , Yname[secondNum]);
        mycode.x = this.x -this.width/2+3 ;
        mycode.y = this.y -this.height/2 +3;
    firstNum=secondNum;
        secondNum=  7* Math.random();
        //这里firstNum的确不是0
trace(firstNum);
break;
}
        
        }

源方档(flash cs5): 全-求助排列对象-4.fla (111.48 KB, 下载次数: 312)
功能是:单击第一行的空白格会有一个相应的图片编码填到相应的位置上,但是不能重复和原来排列出现相邻情况
代码位置:空白格子元件的时间轴上复制代码
学教育技术,上教育技术论坛!http://www.etthink.com
 楼主| 发表于 2014-4-15 11:47:59 | 显示全部楼层
使用代码的好方法,建立一个空白帧,用来初始化。
欢迎大家多发帖,参与讨论,增进彼此了解。
回复 顶 踩

使用道具 举报

 楼主| 发表于 2014-4-15 11:53:16 | 显示全部楼层
在影片剪辑访问主题时轴变量的方法:
时间轴上:var rootP:int=3; 在MC内访问主场景上的变量方法:MovieClip(root).rootP; 这样不行?
或:
root["变量名"]
欢迎大家多发帖,参与讨论,增进彼此了解。
回复 顶 踩

使用道具 举报

 楼主| 发表于 2014-4-15 12:02:35 | 显示全部楼层
在主时间轴上的语句执行一次,而在影片剪辑中的会被循环执行多次
欢迎大家多发帖,参与讨论,增进彼此了解。
回复 顶 踩

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|应用思考-教育技术论坛 ( 皖ICP备10014945号-4 )

GMT+8, 2026-11-11 09:08

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表