开启左侧

学习笔记之“动态添加对象到舞台”

[复制链接]
清灯竹影 发表于 2014-5-10 19:25:14 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
                                    动态添加对象到舞台


    为什么要用代码向舞台添加对象?直接拖不好么?刚开始学习的时候我也很纳闷这个问题,不过随着学习的深入才理解到这个方法的重要性。刚学习Flash的朋友以后会体会到的,这里暂时不展开,仅仅就用添加对象到舞台来写下我的笔记。
    首先是动态添加的步骤,先按步骤做了,再来理解。
一、在舞台上,随便画个红色的矩形,把它转换为影片剪辑;
二、为这个红色矩形影片剪辑取个名字(这里不是指实例名),指的是库里这个影片剪辑的名。名字:ReadButton
    OK,然后右键点这个影片剪辑,选择“属性”。接着这样来设置:
图片一.jpg
欢迎大家多发帖,参与讨论,增进彼此了解。

精彩评论5

正序浏览
清灯竹影 发表于 2014-5-10 19:37:47 | 显示全部楼层
接着上面写,然后点“确定”。这个时候会看到一个提示“无法在类路径中找到.....”这个提示其实是flash自动为你创建一个类,先暂时这么理解,直接点“确定”好了。
         3、在我们用代码创建这个矩形之前,请把舞台上的东西都清除掉,这样便于理解。
         4、在图层一,第一帧输入这样的代码:
             var readButton:RedButton=new RedButton();
             addChild(readButton);
             trace(readButton)
          5、测试影片,我们看到了什么?


     我们看到,矩形出现在舞台的左上角,一个注册点的重要问题,将导致你看的矩形在舞台内显示的面积会不同。这个以后我们会明白的。接着,我们看到输出面板输出的信息:[object ReanButton]  这就是我们看到的测试结果。
    如果觉得这代码有点乱,那么接下来我们缕一缕,呵呵!
     
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-5-10 19:54:20 | 显示全部楼层
        理解:
    在flash中,有一些规则定义了元件是如何被显示在屏幕上的,所有可以显示出来的元件都来自一个特殊的地方,我们叫它“显示队列”。有些教科书会用高深的调调来说显示队列,但是我觉得这样来理解很好,太深了会把自己搞乱,我们只是业余的。     显示队列中列出了你可以添加或者删除的对象,因为,你是用AS3.0来创建对象,所以这些对象在你没有把它们加入显示队列前是不会显示的。
     为什么需要显示队列?有的时候,你会需要创建对象并且还能对它进行修改,但是并不需要将对象显示出来给用户看见。这个对象也许是一个没有准备好使用的元件,或者是需要隐藏起来的东西,对象实际上是在那里的,只是别的人看不见而已。
    分析第一行代码:var readButton:RedButton=new RedButton();
    刚才,通过设置,我们实际上已经产生了一个RedButton的类,它很低调的存在着。现在,我们用“var”创建了一个redButton的变量,redButton这个变量的类型就是RedButton。接着是new,意思是等于一个新的RedButton   卖糕的,但愿我没解释错误。我想用一张图来表达这个让人有点蒙的意思。
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-5-10 20:11:11 | 显示全部楼层
这个图说明:

图片二.jpg
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-5-10 20:19:18 | 显示全部楼层
接着上面的理解

变量的理解

变量的理解
欢迎大家多发帖,参与讨论,增进彼此了解。
 楼主| 清灯竹影 发表于 2014-5-11 13:08:53 | 显示全部楼层
    当你成功的向舞台动态添加对象以后,可以按照自己的想法遵循一定的规则来改变对象的属性。
通常是readButton.x=?readButton.alpha=?......
    在这个过程里,我想我们应该注意这几点:
一、确保库中的对象已经命名,并且在属性对话框高级选项里勾选“为ActionScript导出:;
二、使用var语句创建一个对象来保存实例;
三、用addChild将对象加入显示队列,这样对象才能在舞台上显示出来;
四、使用单排注释或者多排注释来描述你的代码,帮助别人或者你自己更好的理解代码的意思。
欢迎大家多发帖,参与讨论,增进彼此了解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

推荐阅读更多+
会员达人更多+
广告位

最新信息

更多+

关注我们:教育技术人

官方微信

官方微博

教育技术热线:

13955453231

学教育技术,上教育技术论坛!

教育技术论坛征稿范围:教育技术应用案例、教程文章、优秀作品等。

Email:sf@etthink.com

Copyright   ©2007-2026  应用思考-教育技术论坛  Powered by©Discuz!  技术支持:且行资源    ( 皖ICP备10014945号-4 )