1、打开FLASH软件,新建AS3文档。
2、这个效果中,主要包含三个元件,一个汉字的影片剪辑,实例名为word0,一个拼音的影片剪辑,实例名为pinyin0,还有一个是声音的元件,放到库里面,链接名为PY0,为什么要在后面加编号?是为了能制作多个同样的功能汉字元件,代码也会按这种思路进行编写。首先,制作汉字的影片剪辑。在舞台上放一个字,这里使用百度的度字。转换成影片剪辑。
3、双击进入该影片剪辑中,画一个透明的矩形形状,覆盖文字,这是为了设置反应区。返回主场景中。设置汉字影片剪辑的实例名为word0
4、然后制作拼音的影片剪辑,步骤相同,但是因为要输入拼音,所以要使用特殊的字体(PinYinok),这种字体通过符号输入就可以打出带音标的拼音字母。设置该影片剪辑的实例名为pinyin0
5、再然后导入汉字的声音,文件--导入--导入到库,然后浏览选择读音的音频,FLASH中支持mp3和wav两种格式的音频,但有时会导入失败,需要对音频进行格式处理。
6、导入成功后如下图所示:
7、设置音频的AS链接为PY0,在库里选择音频右键,选择属性。
8、打开音频属性面板设置属性如下。
9、现在三个元件都已经完成,最后进行代码的编写,如下var pyAry:Array=new Array();//汉字读音的数组var word_count:int=1;//汉字数量i荏鱿胫协nit();//开始初使化功能function init():void{pyAry.push(new PY0());//有多少个就加多少句,因为没找到更好的解决方法for(var i:int=0;i<word_count;i++)//循环操作,当有多个汉字时,能节省编写时间,规范代码{this["pinyin"+i].visible=false;//隐藏拼音this["word"+i].buttonMode=true;//鼠标经过出现小手this["word"+i].addEventListener(MouseEvent.CLICK,ShowPinYin);//添加鼠标事件}}function ShowPinYin(e:MouseEvent):void{var obj:Object=e.currentTarget;var t:int=int(obj.name.slice(3));pyAry[t].play();//播放读音this["pinyin"+t].visible=true;//显示拼音}CTRL+ENTER就可以了。
10、另,如下是只有一个汉字的代码。pinyin0.箪滹埘麽visible=false;//隐藏拼音word0.buttonMode=true;//鼠标经过出现小手word0.addEventListener(MouseEvent.CLICK,ShowPinYin);//添加鼠标事件function ShowPinYin(e:MouseEvent):void{new PY0().play();//播放读音pinyin0.visible=true;//显示拼音}
11、如下是AS2版本下的代码:pinyin0._visible=false;//隐藏拼音word0.o荏鱿胫协nRelease=function(){var temp_sound:Sound = new Sound();//链接库中音频元件temp_sound.attachSound("PY0");temp_sound.start();pinyin0._visible=true;//显示拼音}