天才教育網(wǎng)合作機構 > 培訓機構 >

                                                                                        東莞設計培訓網(wǎng)

                                                                                        歡迎您!
                                                                                        朋友圈

                                                                                        全國統一學(xué)習專(zhuān)線(xiàn) 9:00-21:00

                                                                                        位置:培訓資訊 > 關(guān)于聲音的常用命令介紹

                                                                                        關(guān)于聲音的常用命令介紹

                                                                                        日期:2005-12-24 00:00:00     瀏覽:349    來(lái)源:東莞設計培訓網(wǎng)
                                                                                        關(guān)于聲音的常用命令介紹

                                                                                        先做個(gè)簡(jiǎn)單的了解,FLASH中經(jīng)常用到的聲音的控制命令以及聲音的屬性有哪些:
                                                                                        1.new Sound()//創(chuàng )建一個(gè)新的聲音對象;
                                                                                        2.mysound.attachSound()//加載庫里的聲音
                                                                                        3.mysound.start()//播放聲音;
                                                                                        4.mysound.getVolume()//讀取聲音的音量
                                                                                        5.mysound.setVolume()//設置音量
                                                                                        6.mysound.getPan()//讀取聲音的平衡值
                                                                                        7.mysound.setPan()//設置聲音的平衡值
                                                                                        8.mysound.position//聲音播放的當前位置
                                                                                        9.mysound.duration//聲音的總長(cháng)度;


                                                                                        下面,我們用一個(gè)具體的例子來(lái)學(xué)習這些命令以及屬性的用法:

                                                                                        各元件的實(shí)例名參看圖1

                                                                                        screen.width-333)this.width=screen.width-333" border=0>


                                                                                        為方便學(xué)習,我們結合一個(gè)具體的例子來(lái)實(shí)踐一下代碼的編寫(xiě).讀者朋友可以先到這里下載源文件,下面我將對這個(gè)例子中牽涉到的AS做些解釋?zhuān)詭椭蠹依斫猓?/P>

                                                                                        點(diǎn)這里下載演示效果文件

                                                                                        點(diǎn)這里下載源文件

                                                                                        1.首先看action層的代碼:

                                                                                        mysound=new Sound();//創(chuàng )建一個(gè)新的聲音對象,名稱(chēng)為mysound;
                                                                                        mysound.attachSound("sound");//復制庫里的聲音給mysound對象,庫里的目標聲音輸出標示符為sound,關(guān)于輸出標示符的添加方法,

                                                                                        參看圖2;

                                                                                        screen.width-333)this.width=screen.width-333" border=0>

                                                                                        mysound.start(0,10);//開(kāi)始播放聲音,從第0秒開(kāi)始,重復10遍
                                                                                        _root.total=int(mysound.duration/1000/60)+"分"+""+(int(mysound.duration/1000)-int(mysound.duration/1000/60)*60)+"秒"http://這里是在total文本框內顯示音樂(lè )的總廠(chǎng),具體的原理參看注意點(diǎn)3;
                                                                                        _root.onEnterFrame=function(){//每播放一幀都觸發(fā)下面的函數;
                                                                                        mysound.setVolume((a._x-30));//設置音量,30為音量線(xiàn)的最左端坐標,音量線(xiàn)總長(cháng)為100,a._x表示滑塊的X坐標,該坐標減去初始位置的坐標30就得到當前應有的音量;
                                                                                        mysound.setPan((b._x-80)*2);//設置當前聲音的平衡值,相對于平衡線(xiàn)的中間位置坐標(80)進(jìn)行調節,范圍(-100,100),-100為左聲道出聲,100為右聲道,0為左右平衡;
                                                                                        txt1=mysound.getVolume();//讀取當前音量并在txt1文本框內顯示
                                                                                        txt2=mysound.getPan();//讀取當前平衡值并在txt2文本框內顯示
                                                                                        }
                                                                                        k=0;//初始化k變量,其作用將在下面說(shuō)明;
                                                                                        _root.bb="正在播放";//讓bb文本框顯示正在播放字樣;


                                                                                        2.控制音量的滑塊上的代碼:


                                                                                        on(press){
                                                                                        startDrag(a,true,30,147,130,147);//按下按鈕不放,則開(kāi)始拖動(dòng)滑塊a,拖動(dòng)范圍 左上右下依次為:30,147,130,147。這些數值的獲得方法,你可以在源文件相應元件的屬性面板里看到;
                                                                                        }
                                                                                        on(release){
                                                                                        stopDrag();//松下按鈕則停止拖動(dòng)
                                                                                        }

                                                                                        3.控制平衡的滑塊上的代碼:

                                                                                        on(press){
                                                                                        startDrag(b,true,30,179,130,179);//按下按鈕不放,則開(kāi)始拖動(dòng)滑塊a,拖動(dòng)范圍 左上右下依次為:30,179,130,179。
                                                                                        }
                                                                                        on(release){
                                                                                        stopDrag();//松下按鈕則停止拖動(dòng)
                                                                                        }

                                                                                        4.暫停按鈕的代碼:

                                                                                        on(release){
                                                                                        k=k+1;//k是用來(lái)統計當前點(diǎn)擊暫停按鈕次數的變量;
                                                                                        if(k%2==1){//奇偶判斷;
                                                                                        mysound.stop();//若為奇數則停止音樂(lè );
                                                                                        _root.b=int(mysound.position/1000);//記錄下停止時(shí)播放的位置,賦值給變量b;
                                                                                        _root.bb="停在第"+_root.b+"秒";//在bb文本框內顯示當前停止的位置;
                                                                                        }else{
                                                                                        mysound.start(_root.b);//從上一次停止的位置開(kāi)始繼續播放;
                                                                                        _root.bb="正在播放";
                                                                                        }
                                                                                        }

                                                                                        5.停止按鈕上的代碼:

                                                                                        on(release){
                                                                                        mysound.stop();//停止音樂(lè )
                                                                                        _root.bb="已停止";//顯示音樂(lè )停止;
                                                                                        _root.b=0;//點(diǎn)擊次數清零;以便下次統計;
                                                                                        _root.k=1//這點(diǎn)的解釋參看注意點(diǎn)1;
                                                                                        }

                                                                                        6.播放按鈕的代碼:

                                                                                        on(release){
                                                                                        mysound.stop()//為了避免當前正在播放音樂(lè )的音樂(lè )和再次開(kāi)始的音樂(lè )重復,所以先停止當前音樂(lè );
                                                                                        mysound.start();//開(kāi)始播放新的音樂(lè )
                                                                                        _root.bb="正在播放";
                                                                                        k=0//關(guān)于這里為什么重新給k賦值,請參看*的注意點(diǎn)2;
                                                                                        }

                                                                                        注意:
                                                                                        1.把這里的k賦值為1,是為了讓音樂(lè )停止后,清除前面對暫停按鈕的操作引起的k值的變化,并且可以讓下一步點(diǎn)暫停按鈕的時(shí)候,讓其執行mysound.start(_root.b),從而具有播放按鈕的功能,因為剛剛執行了停止命令。再執行暫停命令是沒(méi)有意義的!

                                                                                        2.把k重新賦值為0,是為了清除前面對暫停按鈕的操作引起的k值的變化.讀者朋友可以去除這句,然后測試,你會(huì )發(fā)現點(diǎn)了播放按鈕后再點(diǎn)暫停按鈕,會(huì )有兩個(gè)聲音混雜在一起,這個(gè)BUG的出現,正是因為k值在作怪,具體的講,當你進(jìn)行了若干操作,把k的值變?yōu)槠鏀岛?,在點(diǎn)播放按鈕,此時(shí)音樂(lè )開(kāi)始播放,然后你再點(diǎn)下暫停按鈕,這時(shí)候的k值為偶數,那么會(huì )執行mysound.start(_root.b),也就是再開(kāi)始播放一個(gè)音樂(lè ),從而導致兩個(gè)聲音混雜的現象;
                                                                                        到這里,基本上結束了這些常用命令的介紹,希望對各位讀者有幫助,

                                                                                        如果本頁(yè)不是您要找的課程,您也可以百度查找一下:
                                                                                        相關(guān)文章

                                                                                        奇米在线7777在线精品|国产成人精品免费视|精品无码不卡一区二区三区|国内综合精品午夜久久资源|亚洲视频在线观看..