• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            twzheng's cppblog

            『站在風(fēng)口浪尖緊握住鼠標(biāo)旋轉(zhuǎn)!』 http://www.cnblogs.com/twzheng

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              136 隨筆 :: 78 文章 :: 353 評(píng)論 :: 0 Trackbacks

            flash按鈕中的八個(gè)事件有什么區(qū)別?
            [摘自] http://www.flash8.net/

            按鈕中的八個(gè)事件有什么區(qū)別?
            解決思路
            在“影片控制”類的語(yǔ)句中還有一個(gè)與我們制做flash密切相關(guān)的on命令。這個(gè)命令是專門為按鈕設(shè)計(jì)的,它提供了八種按鈕的事件。分別是按下,滑過(guò),釋放,滑離,外部釋放,拖過(guò),拖離和按鍵。最后一種是定義鍵盤的事件。這八種時(shí)間在我們平時(shí)的制作中經(jīng)常可以用到,每一種時(shí)間都有不同的效果,下面我們就結(jié)合事例給大家分析一下。

            具體步驟
            首先我們制作一個(gè)簡(jiǎn)單的移動(dòng)漸變動(dòng)畫(huà)。為了直觀地說(shuō)明按鈕的功能,我們?cè)诘?幀加入as:stop():。如圖3.2.1.-11所示。


            圖3.2.1-11   制作一個(gè)簡(jiǎn)單的動(dòng)畫(huà)
            然后我們新建一層制作一個(gè)按鈕,或者【窗口】|【公用庫(kù)】|【按鈕】,打開(kāi)公用庫(kù)按鈕面板,從里面選擇一個(gè)按鈕拖放到圖層2的第1幀。如圖3.2.1-12所示。


            圖3.2.1-12  拖放按鈕到場(chǎng)景中
            最后,也是非常重要的一點(diǎn)就是必須要在選中按鈕的狀態(tài)下,打開(kāi)as面板。雙擊【動(dòng)作】|【影片控制】中的on命令,右邊會(huì)出現(xiàn)on的參數(shù)面板。如圖3.2.1-13所示。


            圖3.2.1-13   on的參數(shù)面板
            下面我們就詳細(xì)地向大家介紹一下這八種事件的使用。
            1,  按下:我們勾選“按下”框,然后選擇動(dòng)作語(yǔ)句,雙擊【動(dòng)作】|【影片控制】中的play 命令。完成!
            完整的action是:
            on(press){     //設(shè)定鼠標(biāo)事件為按下,然后執(zhí)行大括號(hào)里面的語(yǔ)句。
            play();       //按鈕響應(yīng)后執(zhí)行play(播放)動(dòng)作
            }
            當(dāng)然,在大括號(hào)里面還可以用其他的語(yǔ)句,比如說(shuō),gotoAndPlay(yourframe);  //點(diǎn)擊按鈕后,就會(huì)從你設(shè)置的幀播放。
            我們參考源文件on----1.fla,體會(huì)一下它的效果。


            2,   釋放:這也是flash mx默認(rèn)的按鈕事件。我們勾選“釋放”。與第一個(gè)事件相同加入play命令。完成的語(yǔ)句如下:on(release){    //當(dāng)鼠標(biāo)按下釋放的時(shí)候,執(zhí)行下面的語(yǔ)句動(dòng)作。
            play();        //按鈕響應(yīng)后執(zhí)行play(播放)動(dòng)作。
            }
            我們參考一下源文件on----2.fla,可以看到,當(dāng)鼠標(biāo)左鍵按下按鈕的時(shí)候,并沒(méi)有激發(fā)播放動(dòng)作,而是當(dāng)鼠標(biāo)左鍵放開(kāi)的時(shí)候,執(zhí)行了播放動(dòng)作。這也是與“按下”事件不同的地方。


            3,  外部釋放:添加語(yǔ)句的方法同上。完整的語(yǔ)句如下:
            on (releaseOutside) {     //當(dāng)鼠標(biāo)在按鈕外部釋放的時(shí)候執(zhí)行下面的語(yǔ)句。
            play();                  //按鈕響應(yīng)后執(zhí)行播放動(dòng)作。
            }
            通過(guò)這個(gè)例子我們知道,當(dāng)鼠標(biāo)左鍵在按鈕上按住并移動(dòng)到按鈕以外的地方放開(kāi)后,觸發(fā)了按鈕的動(dòng)作。這是一個(gè)具有非常想象力的事件,大家可以利用on的這個(gè)事件來(lái)制作游戲。
            參看源文件on----3.fla


            4,  滑過(guò):制作方法同上,完整的as語(yǔ)句為:
            on(rollover){     //當(dāng)鼠標(biāo)滑動(dòng)到按鈕上時(shí)執(zhí)行下面的動(dòng)作。
            play();          //按鈕執(zhí)行播放動(dòng)作。
            }
            當(dāng)鼠標(biāo)從按鈕上滑過(guò)的時(shí)候,動(dòng)畫(huà)就開(kāi)始執(zhí)行播放動(dòng)作了,而不需要點(diǎn)擊它。我們可以利用on的這個(gè)特點(diǎn)來(lái)制作一些圖示板,非常簡(jiǎn)單有效。參看源文件on----4.fla


            5,  滑離:制作方法同上,完整的as語(yǔ)句為:
            on(rollOut){     //當(dāng)鼠標(biāo)滑動(dòng)到按鈕上并離開(kāi)時(shí)執(zhí)行下面動(dòng)作。
            Play():          //按鈕響應(yīng)播放動(dòng)作。
            }
            滑離與滑過(guò)并不是相同的,滑離是指鼠標(biāo)滑動(dòng)到按鈕上并離開(kāi)以后開(kāi)始響應(yīng),而滑過(guò)是指只要鼠標(biāo)滑到按鈕上,就開(kāi)始執(zhí)行動(dòng)作。參看源文件on----5.fla


            6,拖過(guò):完整的as是:on(Drag Out){     //當(dāng)鼠標(biāo)拖過(guò)的時(shí)候執(zhí)行下面的動(dòng)作。
                              play();            //執(zhí)行播放動(dòng)作。
                               }
            拖過(guò)的效果是在按鈕上點(diǎn)擊并按住鼠標(biāo)不放,移出按扭區(qū),再移回按鈕上釋放的事件。注意:此例中是一個(gè)文字按鈕,在做文字按鈕的時(shí)候,應(yīng)在文字的下方用一透明方塊,以增加按鈕的反應(yīng)區(qū)域,或者在按鈕的第4幀繪制一個(gè)矩形來(lái)增加反映區(qū)。參看源文件on----6.fla


            7,拖離:完整的as是:on (dragOut) {         //當(dāng)鼠標(biāo)拖離按鈕時(shí)執(zhí)行下面的動(dòng)作。
                                  play();                   //執(zhí)行播放動(dòng)作
            }
            拖離與拖過(guò)有所不同,只要在按鈕上按住鼠標(biāo)左鍵然后移動(dòng)到按鈕外就會(huì)相應(yīng)。他于滑離的區(qū)別在于拖離需要按住鼠標(biāo)左鍵。我們可以參考一下源文件on----7.fla來(lái)體會(huì)一下。
            1,  按鍵:我們勾選“按鍵”以后,右邊的參數(shù)框就成可選狀態(tài)。意思是利用鍵盤上面的按鍵來(lái)激發(fā)按鈕執(zhí)行動(dòng)作。我們添入“k”。如圖3.2.1-14所示。


            圖3.2.1-14   “按鍵”參數(shù)設(shè)置
            完整地as語(yǔ)句為:on (keyPress "z") {        //當(dāng)按下鍵盤中的“z”健時(shí)執(zhí)行下面的動(dòng)作。
                             play();                     //執(zhí)行播放動(dòng)作
            }


            參看源文件on----8.fla
            注  意 ——在給動(dòng)畫(huà)作品添加按鈕的時(shí)候應(yīng)該放到單獨(dú)一層,這樣便于修改。
            提  示 ——on為按鈕上的動(dòng)作,所以我們必須首先要選中按鈕,以后才可以添加on語(yǔ)句。有的朋友在論壇里面提問(wèn),“為什么我的on為灰色不可選狀態(tài)?”原因就是你沒(méi)有選中按鈕。
            技  巧 ——在一般flash作品中,大家不會(huì)有意區(qū)分這些on的功能的,一般采用默認(rèn)的語(yǔ)句。如果沒(méi)有特殊說(shuō)明,你使用了拖離,滑離等事件來(lái)制作“replay”按鈕,會(huì)讓人們摸不著頭腦的。
            試一試 ——我們了解了on得這么多的功能,利用這些功能可以輕易的制作出flash課件,flash游戲里面的效果,大家不妨試一試。
             分  析——on語(yǔ)句的功能與按鈕息息相關(guān),有按鈕的地方一定會(huì)有on語(yǔ)句的使用。而有flash作品的地方,就會(huì)有按鈕的出現(xiàn),所以說(shuō)on的重要作用不可忽視。今天向大家詳細(xì)地介紹了on的各種功能,我們就可以結(jié)合按鈕自身的特點(diǎn),發(fā)揮他們的功能。
            特別提示
            on—1至on—8范例源文件中沒(méi)有使用公用庫(kù)中的按鈕,目的在于讓大家習(xí)慣自己制作按鈕。按鈕時(shí)一部完整的flash作品中不可缺少的部分,所以,同樣需要我們來(lái)精心制作。

            特別說(shuō)明


            這一節(jié)看起來(lái)內(nèi)容比較多,但是知識(shí)比較容易掌握。例如on的八個(gè)事件中,一般經(jīng)常使用釋放,滑過(guò)的事情,而其它事件使用頻率比較少。但如果我們制作課件或者游戲等作品還是會(huì)使用到的。
            文字按鈕的問(wèn)題,我們?cè)谇耙徊糠种幸呀?jīng)講過(guò)了。一定要注意文字按鈕地反應(yīng)區(qū)。


            相關(guān)問(wèn)題
            1,  如何制作永遠(yuǎn)也碰不到的按鈕?
            我們通過(guò)on語(yǔ)句中的滑過(guò)事件,配合goto語(yǔ)句來(lái)完成這個(gè)效果。我們制作一個(gè)按鈕,拖放到主場(chǎng)景中。復(fù)制四幀,并改變第2幀,第3針,第4幀,第5幀中按鈕的位置。回到第1幀,在幀上加入stop,讓動(dòng)畫(huà)在第1幀停止。
            在第1幀的按鈕中添加as:on (rollOver) {     //當(dāng)鼠標(biāo)經(jīng)過(guò)時(shí)執(zhí)行下面的動(dòng)作。
                                    gotoAndStop(2);    //轉(zhuǎn)到并停止在第2幀。
            }
               在第2幀的按鈕中添加as:on (rollOver) {
                                        gotoAndStop(3);
            }
               在第3幀的按鈕中添加as: on (rollOver) {
                                       gotoAndStop(4);
            }
            第4幀的按鈕中添加as:  on (rollOver) {
                                            gotoAndStop(5);
            }
            第5幀的按鈕中添加as:on (rollOver) {
                                           gotoAndStop(1);
            }
            這樣我們?cè)谶@五幀中形成了一個(gè)循環(huán),依次跳轉(zhuǎn),所以你永遠(yuǎn)也點(diǎn)擊不到這個(gè)按鈕。
            參看源文件on----9.fla


            2,  如何停止flash中的聲音?
            在“影片控制”中還有最后一個(gè)語(yǔ)句,就是stopAllSound。意思是關(guān)閉聲音。下面這個(gè)flash事例就是利用stopAllSound制作的關(guān)閉音樂(lè)的按鈕。這條語(yǔ)句沒(méi)有參數(shù),可以加到幀上或者按鈕上。事例中的完整as為:on (release) {    // 當(dāng)按鈕按下時(shí)執(zhí)行下面語(yǔ)句。
                                                       stopAllSounds();  //停止所有聲音
            }
            請(qǐng)參考源文件stopAllSound.fla

            posted on 2007-08-21 11:09 譚文政 閱讀(3120) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Flash ActionScript
            久久这里都是精品| 国内高清久久久久久| 国产精品久久久久久久| 狠狠色婷婷综合天天久久丁香 | 亚洲AV无码成人网站久久精品大| 久久久久亚洲av综合波多野结衣 | 国产美女久久精品香蕉69| 办公室久久精品| 久久精品国产亚洲av麻豆蜜芽| 亚洲中文字幕无码久久精品1| 国产激情久久久久影院小草| 国产亚洲精品久久久久秋霞| 国产精久久一区二区三区| 久久久av波多野一区二区| 久久久久国产一区二区| 99久久中文字幕| 伊人久久大香线蕉av不卡| 久久久久亚洲精品天堂久久久久久 | 99久久国产精品免费一区二区| 亚洲国产天堂久久综合网站| 欧美一区二区三区久久综| 久久夜色精品国产噜噜亚洲a| A级毛片无码久久精品免费| 蜜臀av性久久久久蜜臀aⅴ | 国产综合免费精品久久久| 国产精品久久网| 成人国内精品久久久久一区| 精品久久亚洲中文无码| 2021国内久久精品| 久久乐国产精品亚洲综合 | 久久中文字幕人妻丝袜| 免费一级欧美大片久久网| 热99re久久国超精品首页| 国产成人精品白浆久久69| 久久国产色AV免费观看| a级成人毛片久久| 精品999久久久久久中文字幕| 99久久精品毛片免费播放| 欧美日韩中文字幕久久伊人| 97热久久免费频精品99| 亚洲精品国产成人99久久|