Flash制作淡雅動(dòng)態(tài)菜單:蜻蜓飛飛(1)(2)_Flash教程
推薦:ASP flash下拉列表(顯示圖片)在上一次我介紹了數(shù)據(jù)庫(kù)與flash連接方式.在這里,這一方面的我就不多說(shuō)了....還有ASP中的代碼.我也略過(guò)不說(shuō).就只是貼出來(lái)...!--#includefile=conn.asp--%
interval層上畫一些間隔來(lái)分隔這些按鈕。把剛做好的菜單轉(zhuǎn)化為元件,如下圖所示。鏈接名為menu,AS 2.0類為Menu,注重大小寫。
這是在FLA文件上的最后一步動(dòng)作了�;氐街鲌�(chǎng)景。如下圖:
在bg層上畫一些花花草草做背景在line層上畫一半透明的白色長(zhǎng)條,這只是給菜單起裝飾作用。在menu層上拖入剛才做好的Menu元件。一切OK,保存吧。后面就該AS代碼出場(chǎng)了。
建一個(gè)文本文件,保存為Menu.as,找到上面貼子中有“鏈接名為menu,AS 2.0類為Menu,注重大小寫”這么一句話。對(duì)了,必須命名為Menu,這樣保持與AS 2.0類為Menu相一致。
下面是文件中的代碼
/* * author 西西 * date 2006.04 */
class Menu { //按鈕的實(shí)例名
private var home:MovieClip;
private var photo:MovieClip;
private var diary:MovieClip;
private var work:MovieClip;
private var music:MovieClip;
private var bug:MovieClip;//晴蜓的實(shí)例名
private var ballTween:Object;//用來(lái)使用Tween類的對(duì)像
private var DEPTH_1:Number;
private var TEXTINITCOLOR:Number;
private var TEXTOVERCOLOR:Number;
//構(gòu)造函數(shù)
function Menu() {
TEXTINITCOLOR = 0x707D37;//文字初始顏色
TEXTOVERCOLOR = 0xFFFFFF;//鼠標(biāo)經(jīng)過(guò)文字的顏色
DEPTH_1 = 1;//深度
showMenuText();//設(shè)定按鈕邊上的文字內(nèi)容
initBtn();//菜單中所有的功能都在此函數(shù)中 };
private function showMenuText():Void {
home.txt.text = "首頁(yè)";
photo.txt.text = "西西照片";
diary.txt.text = "西西日記";
work.txt.text = "西西作品";
music.txt.text = "我的音樂(lè)"; }
private function initBtn():Void {
var ins = this;//為了能在onRollOver等函數(shù)中使用全局變量而設(shè)
bug._x = home._x;//設(shè)定晴蜓的初始位置,讓它停在首頁(yè)的上面
bug.gotoAndStop(1);//設(shè)定晴蜓翅膀的初始狀態(tài)為靜止
//將幾個(gè)按鈕的實(shí)例放至一數(shù)組中,目的為節(jié)約代碼
var BtnArr:Array = new Array(home,photo,diary,work,music);
for(var i=0;i;//按順序取出每一個(gè)按鈕
//當(dāng)鼠標(biāo)經(jīng)過(guò)按鈕時(shí),蜻蜓開始向著按鈕的方向飛,飛到了就停下來(lái)。 mc.onRollOver =function() { //當(dāng)每一按鈕在鼠標(biāo)經(jīng)過(guò)時(shí),設(shè)至其文字顏色
ins.setTextColor(this,ins.TEXTOVERCOLOR); //當(dāng)鼠標(biāo)經(jīng)過(guò)時(shí)加載光線劃過(guò)效果
this.attachMovie("flash","flash" 2,2);
//將沿未完成的蜻蜓飛行的動(dòng)作停止 ins.ballTween.stop();
//計(jì)算蜻蜓和當(dāng)前鼠標(biāo)所指按鈕間的距離,目的為下面的實(shí)現(xiàn)蜻蜓轉(zhuǎn)向所指按鈕方向
var instance:Number = this._x - ins.bug._x;
//假如蜻蜓是面向左,而所指按鈕在晴蜓的右面,則使蜻蜓面向右轉(zhuǎn)。
if(instance>0 && ins.bug._xscale>0) {
ins.bug._xscale = - ins.bug._xscale; } //同上,在按鈕在蜻蜓左邊時(shí),使它面向左
if(instance<0 && ins.bug._xscale<0) {
ins.bug._xscale = - ins.bug._xscale; }
//實(shí)現(xiàn)蜻蜓翅膀扇動(dòng)效果
ins.bug.play();
//使用Tween類實(shí)現(xiàn)蜻蜓的飛行
//Strong easeOut為從開始到結(jié)束作減速運(yùn)動(dòng) //Strong easeIn為從開始到結(jié)束作加速運(yùn)動(dòng)
var easeType = mx.transitions.easing.Strong.easeOut;
//蜻蜓開始飛時(shí)的位置
var begin = ins.bug._x; //蜻蜓飛結(jié)束時(shí)的位置
var end = this._x; //飛行共用時(shí)間
var time = 2; //指明飛行的物體是蜻蜓
var mc = ins.bug; //飛吧,飛吧
ins.ballTween = new mx.transitions.Tween(mc, "_x", easeType, begin, end, time, true);
//當(dāng)飛完后,蜻蜓翅膀停止扇動(dòng)
ins.ballTween.onMotionFinished = function() {
ins.bug.gotoAndStop(1); }; };
//當(dāng)鼠標(biāo)離開所指按鈕時(shí),蜻蜓就飛回家
mc.onRollOut = function() { //設(shè)定字的顏色 ins.setTextColor(this,ins.TEXTINITCOLOR);
//移除光線劃過(guò)效果 var mcflash:MovieClip = this.getInstanceAtDepth(2); mcflash.removeMovieClip(); //讓蜻蜓的頭轉(zhuǎn)向首頁(yè)的方向 if(ins.bug._xscale<0) { ins.bug._xscale = - ins.bug._xscale; }
//停止尚未完成的飛行動(dòng)作 ins.ballTween.stop();
//實(shí)現(xiàn)蜻蜓翅膀扇動(dòng)效果 ins.bug.play();
//開始飛行啦,這里None采用勻速飛行
var easeType = mx.transitions.easing.None.easeOut;
var begin = ins.bug._x;
//向著首頁(yè)的方向飛
var end = ins.home._x;
var time = 4;
var mc = ins.bug;
ins.ballTween = new mx.transitions.Tween(mc, "_x", easeType, begin, end, time, true);
ins.ballTween.onMotionFinished = function() { ins.bug.gotoAndStop(1); }; }; }
//將各個(gè)小圖標(biāo)加載到文字的左邊
var pichome:MovieClip = home.attachMovie("home","home" DEPTH_1,DEPTH_1);
var picphoto:MovieClip = photo.attachMovie("photo","photo" DEPTH_1,DEPTH_1);
var picdiary:MovieClip = diary.attachMovie("diary","diary" DEPTH_1,DEPTH_1);
var picwork:MovieClip = work.attachMovie("work","work" DEPTH_1,DEPTH_1);
var picmusic:MovieClip = music.attachMovie("music","music" DEPTH_1,DEPTH_1); //點(diǎn)擊各個(gè)按鈕后,所執(zhí)行的代碼,想要做什么,自己隨便寫吧
home.onRelease = function() { }
photo.onRelease = function() { }
diary.onRelease = function() { }
work.onRelease = function() { }
music.onRelease = function() { }
} //設(shè)置字的顏色
private function setTextColor(mc:MovieClip,usecolor:Number):Void {
var my_fmt = new TextFormat();
my_fmt.color = usecolor;
mc.txt.setTextFormat(my_fmt); } }
按CTRL ENTER測(cè)試。
其實(shí)這個(gè)菜單還是有許多需要修改的地方。比如增加菜單中按鈕的個(gè)數(shù)之類就不怎么方便。應(yīng)該和外部提供一個(gè)很好的接口。另外關(guān)于按鈕的排列,之間的間隔大小也應(yīng)由程序控制,并且應(yīng)更加靈活。
分享:flash與數(shù)據(jù)庫(kù)的連接確切地說(shuō)..flash是不可以直接與數(shù)據(jù)庫(kù)連接的.只能是通過(guò)ASP(只是我比較了解ASP,也可以是其他的PHP/JSP等);所以呢.首先,先在ASP里編寫好連接數(shù)據(jù)庫(kù)的語(yǔ)句%dim
Flash教程Rss訂閱網(wǎng)站制作教程搜索
Flash教程推薦
- Flash 動(dòng)作腳本之:資料速查(15)
- Flash特效動(dòng)畫制作:飛舞的螺炫
- Flash片頭loading與MovieClipLoader
- 小技巧:純AS的運(yùn)動(dòng)模糊效果
- 在Flash MX中實(shí)現(xiàn)自由拖動(dòng)圖片和改變圖片(3)
- Flash入門教程:滾動(dòng)字幕動(dòng)畫的制作(1)
- 使用“LoadMovie()”制作純FLASH網(wǎng)站的問(wèn)題心得
- Flash8實(shí)現(xiàn)動(dòng)態(tài)星空的通用方法
- 獲得動(dòng)畫在網(wǎng)絡(luò)上地址的小技巧
- Flash AS輕松制作旋轉(zhuǎn)可控立方體特效
猜你也喜歡看這些
- Flash CS3多媒體課件制作視頻教學(xué)
- Flash8全實(shí)例學(xué)習(xí)手冊(cè)原書配套光盤
- FIF小組Flash MX 2004視頻教程超速入門
- 新東方任汝芬考研政治大綱解析班flash視頻及其他
- Flash 8 中文版從入門到精通隨書光盤
- flash動(dòng)作編程教程
- 中文版Flash CS4標(biāo)準(zhǔn)教程
- Flash.ActionScript3.0從入門到精通
- 《Flash CS3 Professional動(dòng)畫制作技能進(jìn)化手冊(cè)》--樣章、樣例、教學(xué)視頻
- Flash 8完美動(dòng)畫設(shè)計(jì)與制作
- 相關(guān)鏈接:
- 教程說(shuō)明:
Flash教程-Flash制作淡雅動(dòng)態(tài)菜單:蜻蜓飛飛(1)(2)
。


