AS3基础教程-第27课-按钮切换画面小程序(上)

2025-04-25 10:09:32

本节课通过一个小程序复习上节课的内容

工具/原料

flashCS6

一、画面设计:

1、打开flashCS6软件,新建AS3文件,保存为27.fla文件

2、首先,从公用库内找到一个合适的按钮,比如说下图这个。我们需要使用这个按钮多次,每一个按钮中的文字都要求不同。故此,需要先将按钮里的文字删掉。方法是用选择工具双击舞台上的按钮,就会进入按钮内部,见下图2,文字位于text图层内,直接删除该图层即可。

AS3基础教程-第27课-按钮切换画面小程序(上)
AS3基础教程-第27课-按钮切换画面小程序(上)

3、删除按钮内的文字图层之后,单击 场景 1 进入主场景。此时舞台上的按钮内不再有文字了。用选择工具单击这个按摅侈钠纾钮后,按住Alt键不放,拖动鼠标,会复制出一个按钮,复制结束后,松开Alt键重复该步骤,一共复制出3个按钮,如此一来,舞台上有4个一模一样的按钮,如下图所示。将图层的名字重命名为 按钮

AS3基础教程-第27课-按钮切换画面小程序(上)

4、新建一个图层,命名为 文字然后在四个按钮上面 写上四个文字,代表四个不同功能的按钮。这里,作为演示,这四个文字我分别设置为首页、图片欣赏、软件下载、关于本站

AS3基础教程-第27课-按钮切换画面小程序(上)

5、接下来,给四个按钮分别设置实例名为shouye_btn tupian_btn ruanjian_btn gu锾攒揉敫anyu_btn这里有个细节要注意:因为 文字 图层在 按钮图层上面,单击按钮的时候,可能会被文字挡住,可以先锁定文字层,设置完毕后再给文字层解锁

6、我们要实现的目的就是,单击这4个按钮,分别跳转到不同的画面。故此,还要制作四个画面,分别与按钮的文字一一对应而且,一打开本程序,出现的就是 首页 的画面,也就是第一帧。由于我只是演示代码的写法,故此,画面的设计不再讲述,这里简单的使用文字做一下区分即可

7、新建一个图层,命名为 首页,然后继续新建图层,分别重命名为 4个按钮的文字,如下图所示

AS3基础教程-第27课-按钮切换画面小程序(上)

8、接下来,在新建的这4个图层的第一帧内,分别绘制画面。这里我用文字简单的做区分

AS3基础教程-第27课-按钮切换画面小程序(上)

9、然后,需要将这四个图层的关键帧分别错开首页位于1帧图片欣赏位于2帧软件下载位于3帧关于本站位于4帧使用如下的技巧对帧进行移位:单击 图片欣赏 图层的第一帧,向右拖动,拖到第2帧上后松手其余的同理操作

AS3基础教程-第27课-按钮切换画面小程序(上)

10、我们需要让按钮的文本一直显示在画面上,因此,需要延长一下 按钮和文字图层的时间轴。在这两个图层的第4帧分别按一下F5键

AS3基础教程-第27课-按钮切换画面小程序(上)

11、至此,画面布置结束。接下来我们书写代码

二、代码分析

1、首先,给按钮加代码。仍然使用代码片段功能,给4个按钮分别添加按钮单击的命令。让然是将自动生成的注释都删掉。由于时间轴共有4帧,所以自动生成的代码也在第4帧。但是我们需要代码都在第1帧,故此将自动生成的Actions图层的第4帧拖放到该层的第1帧

2、接下来,就是给4个按钮的相应函数内分别添加跳思凳框酣转时间轴的命令这里,要求跳转到相应的帧后停止播放头,故此需要使用gotoAndStop(n)命令按照4个按钮的从左到右的顺序,它们的命令分别是爿讥旌护gotoAndStop(1)gotoAndStop(2)gotoAndStop(3)gotoAndStop(4)

3、测试影片,发现画面频闪,原因是 默认情况下,时间轴是重复播放的,由于我们没有添加stop命令,所以一直播放打开Actions图层的第1帧,在所有代码的最上面添加一行代码:stop()

4、下面给出本例的完整代码:衡痕贤伎stop()shouye_btn.addEventListener(MouseEvent.CLICK, fl_M泠贾高框ouseClickHandler);function fl_MouseClickHandler(event:MouseEvent):void{gotoAndStop(1)}tupian_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2);function fl_MouseClickHandler_2(event:MouseEvent):void{gotoAndStop(2)}ruanjian_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_3);function fl_MouseClickHandler_3(event:MouseEvent):void{gotoAndStop(3)}guanyu_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_4);function fl_MouseClickHandler_4(event:MouseEvent):void{gotoAndStop(4)}

三、本例补充说明

1、我们发现,四个按钮实现的效果都是类似的,代码也如出一辙。那么是否有更加简易的书写方式呢?答案是肯定的。我会在下节课揭晓

2、请大家保存好本例的fla文件,下节课要在本例的基础上修改代码

3、另外,你可以将四个画面分别绘制一下,而不是和我演示的那样,只是弄上几个文字说明一下就拉倒了

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢