Flash組件教程:組件動(dòng)畫效果的修改
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-06 01:25:30 作者:佚名
我要評(píng)論
某些組件在用戶的操作過(guò)程中,會(huì)出現(xiàn)一些很酷的動(dòng)畫效果。比如,使用TREE制作下拉菜單,或者ComboBox制作下拉菜單時(shí),下拉列表很酷的滑出來(lái)。這種效果,主要是借助Tween類或者easing類完成的。一般的效果分為三類:
A、Open:使用組件打開子部分動(dòng)畫效果時(shí),這類效果支持的組
某些組件在用戶的操作過(guò)程中,會(huì)出現(xiàn)一些很酷的動(dòng)畫效果。比如,使用TREE制作下拉菜單,或者ComboBox制作下拉菜單時(shí),下拉列表很酷的滑出來(lái)。這種效果,主要是借助Tween類或者easing類完成的。一般的效果分為三類:
A、Open:使用組件打開子部分動(dòng)畫效果時(shí),這類效果支持的組件包括:ComboBox、Accordion、Tree;
B、Popup:使用組件彈出子部分動(dòng)畫效果時(shí),支持組件MenuBar;
C、Selection:當(dāng)組件里的項(xiàng)目被選中中,出現(xiàn)一些顏色標(biāo)示動(dòng)畫效果,支持組件:ComboBox、DataGrid、List、Tree。
對(duì)組件動(dòng)畫效果的修改也分為三類:全局修改、組件類修改、實(shí)例化修改。(隨后有詳細(xì)介紹)
[heart] 關(guān)于Open類動(dòng)畫效果,可有兩個(gè)屬性:
一、openDuration:動(dòng)畫持續(xù)時(shí)間,單位為毫秒,數(shù)值越小,動(dòng)畫越快。
二、openEasing:動(dòng)畫效果類,使用mx.transition.easing包里的類,包括Back、Bounce、Elastic、None、Regular、Strong,這些動(dòng)畫效果要配合Tween類,以及淡出淡入函數(shù)來(lái)實(shí)現(xiàn)。
[heart] 修改彈出類動(dòng)畫效果(Popup),只有一個(gè)屬性:
poputDuration:動(dòng)畫持續(xù)時(shí)間,與openEasing相同。因?yàn)檫@類效果一般只支持MenuBar組件。所以只有下拉菜單的時(shí)候。彈出時(shí)間的長(zhǎng)短這一屬性。大家一定要記住哦。
[heart] 修改選擇顏色標(biāo)示(Selection)類動(dòng)畫效果,可以有以下兩個(gè)屬性:
selectionDuration:動(dòng)畫持續(xù)時(shí)間,跟openEasing相同;
selectionEasing:動(dòng)畫效果類,與openEasing相同。
例如:修改ComboBox組件下拉列表會(huì)修改動(dòng)畫效果,動(dòng)畫效果在1秒內(nèi)完成:
_global.styles.ComboBox.setStyles("openDuration",1000)
//設(shè)置打開類動(dòng)畫效果
_global.styles.ComboBox.setStyles("openEasing",mx.transitions.easing.Elastic.easeOut);
當(dāng)然,這上面的后面一段,可能有些復(fù)雜。對(duì)吧。下面就來(lái)簡(jiǎn)化一下:
import mx.transitions.easing.*;
_global.styles.ComboBox.setStyles("openDuration",1000);
_global.sytles.ComboBox.setStyles("openEasing",Elastic.easeOut);
下面,再舉一個(gè)修改List組件顏色標(biāo)示動(dòng)畫效果:
import mx.transitions.easing.*;
_global.styles.ScrollSelectList.setStyle("selectionDruation",1000);
_global.styles.ScrollSelectList.setStyle("selectionEasing",Elastic.easeOut)
備注:ComboBox、DataGrid、List、MenuBar里的Menu和Tree組件都是繼承ScrooSelectList類,所以,如果要改變顏色標(biāo)示動(dòng)畫效果。就需要直接修改ScrooSelectList的樣式。不過(guò),如果FLA里同時(shí)有幾個(gè)這類的組件。全部都會(huì)受到影響的。如果只想修改List組件,就要利用組件類修改的方法。大家如果對(duì)easing類不太熟悉。下面舉一個(gè)例子:
easing 包提供了的六個(gè)用于控制緩動(dòng)的類:
Back 一次在一端或兩端擴(kuò)展到過(guò)渡范圍之外以提供輕微的溢出效果。
Bounce 完全在過(guò)渡范圍的一端或兩端內(nèi)提供彈跳效果。彈跳次數(shù)與持續(xù)時(shí)間有關(guān):持續(xù)時(shí)間越長(zhǎng),彈跳次數(shù)越多。
Elastic 提供一端或兩端超出過(guò)渡范圍的彈性效果。彈性量不受持續(xù)時(shí)間影響。
None 提供從開始到結(jié)尾的無(wú)任何減速或加速效果的相同的運(yùn)動(dòng)。該過(guò)渡通常也稱為線性過(guò)渡。
Regular 在加速效果、減速效果或這兩種效果的一端或兩端提供更慢的運(yùn)動(dòng)。
Strong 在一端或兩端提供很慢的運(yùn)動(dòng)。此效果類似于 Regular,但更為顯著。
easing 包的三個(gè)緩動(dòng)方法:
easeIn 在過(guò)渡的開始提供緩動(dòng)效果。
easeOut 在過(guò)渡的結(jié)尾提供緩動(dòng)效果。
easeInOut 在過(guò)渡的開始和結(jié)尾提供緩動(dòng)效果。
先來(lái)看看Open這種動(dòng)畫效果演示:
下面看看代碼:
//導(dǎo)入easing類
import mx.transitions.easing.*;
//設(shè)置全局組件樣式
_global.styles.ComboBox.setStyle("openDuration", 2000);
_global.styles.ComboBox.setStyle("openEasing", Elastic.easeOut);
//設(shè)置個(gè)別組件樣式
my_ComboBox1.setStyle("openDuration", 250);
//取消my_ComboBox1的動(dòng)畫效果
my_ComboBox1.setStyle("openEasing", null);
這里,就用到了全局定義,以及局定義。也就是實(shí)例修改。實(shí)例修改的時(shí)候。只需要單獨(dú)將需要設(shè)置樣式的組件賦加上函數(shù)。
如上面所示,實(shí)例修改的語(yǔ)法:
組件實(shí)例.setStyle("屬性",參數(shù))
example:
import mx.transitions.easing.*;
my_ComboBox.setStyle("openEasing",Elastic.easeOut)
大家有不明白的地方,可以留言。呵呵...寫得比較簡(jiǎn)單,大家將就著看喲...
A、Open:使用組件打開子部分動(dòng)畫效果時(shí),這類效果支持的組件包括:ComboBox、Accordion、Tree;
B、Popup:使用組件彈出子部分動(dòng)畫效果時(shí),支持組件MenuBar;
C、Selection:當(dāng)組件里的項(xiàng)目被選中中,出現(xiàn)一些顏色標(biāo)示動(dòng)畫效果,支持組件:ComboBox、DataGrid、List、Tree。
對(duì)組件動(dòng)畫效果的修改也分為三類:全局修改、組件類修改、實(shí)例化修改。(隨后有詳細(xì)介紹)
[heart] 關(guān)于Open類動(dòng)畫效果,可有兩個(gè)屬性:
一、openDuration:動(dòng)畫持續(xù)時(shí)間,單位為毫秒,數(shù)值越小,動(dòng)畫越快。
二、openEasing:動(dòng)畫效果類,使用mx.transition.easing包里的類,包括Back、Bounce、Elastic、None、Regular、Strong,這些動(dòng)畫效果要配合Tween類,以及淡出淡入函數(shù)來(lái)實(shí)現(xiàn)。
[heart] 修改彈出類動(dòng)畫效果(Popup),只有一個(gè)屬性:
poputDuration:動(dòng)畫持續(xù)時(shí)間,與openEasing相同。因?yàn)檫@類效果一般只支持MenuBar組件。所以只有下拉菜單的時(shí)候。彈出時(shí)間的長(zhǎng)短這一屬性。大家一定要記住哦。
[heart] 修改選擇顏色標(biāo)示(Selection)類動(dòng)畫效果,可以有以下兩個(gè)屬性:
selectionDuration:動(dòng)畫持續(xù)時(shí)間,跟openEasing相同;
selectionEasing:動(dòng)畫效果類,與openEasing相同。
例如:修改ComboBox組件下拉列表會(huì)修改動(dòng)畫效果,動(dòng)畫效果在1秒內(nèi)完成:
_global.styles.ComboBox.setStyles("openDuration",1000)
//設(shè)置打開類動(dòng)畫效果
_global.styles.ComboBox.setStyles("openEasing",mx.transitions.easing.Elastic.easeOut);
當(dāng)然,這上面的后面一段,可能有些復(fù)雜。對(duì)吧。下面就來(lái)簡(jiǎn)化一下:
import mx.transitions.easing.*;
_global.styles.ComboBox.setStyles("openDuration",1000);
_global.sytles.ComboBox.setStyles("openEasing",Elastic.easeOut);
下面,再舉一個(gè)修改List組件顏色標(biāo)示動(dòng)畫效果:
import mx.transitions.easing.*;
_global.styles.ScrollSelectList.setStyle("selectionDruation",1000);
_global.styles.ScrollSelectList.setStyle("selectionEasing",Elastic.easeOut)
備注:ComboBox、DataGrid、List、MenuBar里的Menu和Tree組件都是繼承ScrooSelectList類,所以,如果要改變顏色標(biāo)示動(dòng)畫效果。就需要直接修改ScrooSelectList的樣式。不過(guò),如果FLA里同時(shí)有幾個(gè)這類的組件。全部都會(huì)受到影響的。如果只想修改List組件,就要利用組件類修改的方法。大家如果對(duì)easing類不太熟悉。下面舉一個(gè)例子:
easing 包提供了的六個(gè)用于控制緩動(dòng)的類:
Back 一次在一端或兩端擴(kuò)展到過(guò)渡范圍之外以提供輕微的溢出效果。
Bounce 完全在過(guò)渡范圍的一端或兩端內(nèi)提供彈跳效果。彈跳次數(shù)與持續(xù)時(shí)間有關(guān):持續(xù)時(shí)間越長(zhǎng),彈跳次數(shù)越多。
Elastic 提供一端或兩端超出過(guò)渡范圍的彈性效果。彈性量不受持續(xù)時(shí)間影響。
None 提供從開始到結(jié)尾的無(wú)任何減速或加速效果的相同的運(yùn)動(dòng)。該過(guò)渡通常也稱為線性過(guò)渡。
Regular 在加速效果、減速效果或這兩種效果的一端或兩端提供更慢的運(yùn)動(dòng)。
Strong 在一端或兩端提供很慢的運(yùn)動(dòng)。此效果類似于 Regular,但更為顯著。
easing 包的三個(gè)緩動(dòng)方法:
easeIn 在過(guò)渡的開始提供緩動(dòng)效果。
easeOut 在過(guò)渡的結(jié)尾提供緩動(dòng)效果。
easeInOut 在過(guò)渡的開始和結(jié)尾提供緩動(dòng)效果。
先來(lái)看看Open這種動(dòng)畫效果演示:
下面看看代碼:
//導(dǎo)入easing類
import mx.transitions.easing.*;
//設(shè)置全局組件樣式
_global.styles.ComboBox.setStyle("openDuration", 2000);
_global.styles.ComboBox.setStyle("openEasing", Elastic.easeOut);
//設(shè)置個(gè)別組件樣式
my_ComboBox1.setStyle("openDuration", 250);
//取消my_ComboBox1的動(dòng)畫效果
my_ComboBox1.setStyle("openEasing", null);
這里,就用到了全局定義,以及局定義。也就是實(shí)例修改。實(shí)例修改的時(shí)候。只需要單獨(dú)將需要設(shè)置樣式的組件賦加上函數(shù)。
如上面所示,實(shí)例修改的語(yǔ)法:
組件實(shí)例.setStyle("屬性",參數(shù))
example:
import mx.transitions.easing.*;
my_ComboBox.setStyle("openEasing",Elastic.easeOut)
大家有不明白的地方,可以留言。呵呵...寫得比較簡(jiǎn)單,大家將就著看喲...
相關(guān)文章

flash cs6鼠標(biāo)跟隨效果實(shí)現(xiàn)代碼分享
flash cs6想要實(shí)現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來(lái)看看使用as2.0實(shí)現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下2019-05-19
Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來(lái)輸入文本,該怎么使用代碼輸入文本呢?請(qǐng)看下文詳細(xì)的教程,需要的朋友2018-03-11
flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來(lái)看看簡(jiǎn)單的例子,需要的朋友可以參考下http://www.fzitv.net/softs/408402.2018-02-28
flash cs6中怎么使用ActionScript3.0?
flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來(lái)看看詳細(xì)的教程,需要的朋友可以參考下2018-01-25
Flash中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?
本教程給大家分享一個(gè)Flash小教程,教大家在Flash CS6中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?方法很簡(jiǎn)單,感興趣的朋友歡迎前來(lái)一起分享學(xué)習(xí)2018-01-12
Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置?
本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置,教程講解的詳細(xì),感興趣的朋友歡迎前來(lái)分享學(xué)習(xí)2017-11-20
在Flash CS6中使用with函數(shù)繪制背景圖教程
本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細(xì),方法也不難,非常適合Flash新手入門學(xué)習(xí)2017-11-18
Flash怎么設(shè)置元件坐標(biāo)?flash使用代碼設(shè)置元件的坐標(biāo)的教程
Flash怎么設(shè)置元件坐標(biāo)?flash中導(dǎo)如的元件需要添加坐標(biāo),該怎么定位元件坐標(biāo)呢?下面我們就來(lái)看看flash使用代碼設(shè)置元件的坐標(biāo)的教程,需要的朋友可以參考下2017-10-11
Flash怎么制作來(lái)回?fù)u擺的花朵的動(dòng)畫?
Flash怎么制作來(lái)回?fù)u擺的花朵的動(dòng)畫?Flash中想要給花朵制作一段搖擺的動(dòng)畫效果,該怎么制作呢?下面我們就來(lái)看看詳細(xì)的教程,很簡(jiǎn)單,需要的朋友可以參考下2017-05-23
Flash怎么制作流動(dòng)七彩色的文字?想要讓文字動(dòng)起來(lái),該怎么使用flash給文字制作一個(gè)流動(dòng)七彩色的動(dòng)畫呢?下面我們就來(lái)看看詳細(xì)的教程,需要的朋友可以參考下2017-04-23











