5D艺术网首页
商城
|
资讯
|
作品
|
博客
|
教程
|
论坛
登录
注册
加为好友
发短消息
来自:西安
性别:先生
最后登录:2014-09-24
http://dzxz.5d.cn/
学习编程纯属业余爱好,但时间久了,或多或少就有了一点点的经验和心得。接触 Flash 程序设计是从2005年的10月以后才开始的,在学习Flash的过程中得到了 闪客启航UC聊天室 很多朋友和老师的非常大的帮助,这对我的学习的方向也产生了较大的影响。 目前对游戏设计、课件制作有较浓厚的兴趣,在博客中写了一些这方面的分析文章,与大家一起分享编程的快乐,并且希望我的课件设计方面的讨论对教师朋友能有所帮助。
首页
|
新闻
|
话题
|
博客
|
相册
|
艺术作品
|
社交关系
|
留言板
|
社交圈
2006/06/06 | 变量重名的分析与应用
类别(Flash课件设计)
|
评论
(1)
|
阅读(79)
|
发表于 11:40
场景中的MC元件实例可以写上一个实例名,用于代码调用时可以指定目标。但是当多个MC具有相同的实例名时,结果又如何呢?是同时对操作进行响应,还是以一定的规律进行响应的呢?
先来测试一下,场景中依次制作三个MC元件,实例名都称为KK,主场景帧中写入代码:
KK.onPress = function(){
this._x += 30;
}
运行一下看看,结果只有最先创建的那一个MC 有反应,其它两个没有变化。将最先那个MC删除掉,再运行,结果第二个创建的MC 有反应。
于是可以得到这样一个结论,当实例名重名时,系统会在舞台上进行搜索,找到第一个名称符合要求的变量时就停止搜索,也就是说搜索是以创建的顺序来进行的。
在舞台中,当对MC 进行复制时,如果MC 中写有实例名,该实例名也将被复制,此后如果对复制的MC 将无法直接进行变量的引用,这是需要避免的情况。而文本框中的变量,则可以通过在主场景中进行变量定义,例如:
var myTxt:String; 或者 var myTxt:Number;
经过这样的类型指定,就可以在对输入值进行运算时,避免出现异外的情况。
与次类似的是在类定义文件中,添加一些MovieClip对象,对象的名称与主场景中MC元件实例名相同,并不影响类的应用,以前我一直不理解,认为这样将出现两个同名的MC,但实际上这在Flash中是正常的,反到是如果没有在类中定义MC对象的话,相关的操作会提示找不到变量。这也许是在说明,舞台上的实例名具有较高的优先级,类文件中的同名MC会被舞台上的MC所取代,因此,类中所写的与MC有关的操作代码都将体现在舞台的MC上。
0
评论
Comments
日志分类
首页
[295]
Flash游戏教程
[33]
Flash与飞行程序设计
[10]
Flash课件设计
[62]
Flash学习笔记
[74]
家住西安
[47]
编程资源
[69]