当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash AS3制作个性的旋转圆形网页导航

Flash动画制作
相册类
Actionscript优化教程
用as来控制图片的曝光效果
如何将角度和坐标标准化
数组排序方法介绍
setInterval全面的介绍
attachMovie 函数的使用方法教程
flash action 详解(8)
AS的基本代码解释(3)
简单的检测鼠标是否有移动的类
FSCommand 用法详解
图片放大缩小移动类
flash中数组的妙用
如何使用Flash连接资料库
关于setInterval的应用
AS的基本代码解释(4)
动感地带学习专题(3)
动感地带学习专题(4)
动感地带学习专题(1)
动感地带学习专题(5)

Flash动画制作 中的 Flash AS3制作个性的旋转圆形网页导航


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-04   浏览: 97 ::
收藏到网摘: n/a

 Flash AS3制作个性的旋转圆形网页导航,最终效果如下。

源文件下载:/upload/tech/20100104/20100104135417_fc49306d97602c8ed1be1dfbf0835ead.zip

 1、创建一个FLASH文件,保存为menu.fla文件。

2、重命名“layer 1″为 “actions”,我们使用http://blog.greensock.com/tweenlite/的小而美的Tweening Engine,下载AS3的压缩包,然后解压缩到com目录然后把这个目录放到menu.fla文件的文件夹中。

3、用矩形工具绘制一个黑色的矩形,转换为MC影片剪辑,打开属性窗口。

 

4、双击这个影片剪辑编辑它,使用文本工具,设置为动态文本,绘制一个区域,设置颜色是白色,命名实例名为abelBtn。

 

 5、回到场景1,删除掉刚刚建立的影片剪辑。

6、我们选择第一帧,然后打开动作面板,输入下面代码,主要是为了导入Tweenlite engine。

import com.greensock.*;
import com.greensock.easing.*;

7、然后创建一个数字,动态调用每个菜单的项目文字。

var menu_items:Array = ["HOME","ABOUT ME","PORTFOLIO","BLOG","CONTACT"];
var menu:Sprite = new Sprite();
menu.x= stage.stageWidth / 2;
menu.y=stage.stageHeight /2;
addChild(menu);

8、用一个函数buildMenu来实现每个菜单项目。

function buildMenu(){
 var btn:myButton;
 var angle:int=360/menu_items.length;
 for (var i:int = 0; i< menu_items.length; i++){
  btn = new myButton();
  btn.buttonMode=true;
  btn.labelBtn.text = menu_items[i];
  btn.mouseChildren=false;
  menu.addChild(btn);
  TweenLite.to(btn,2,{rotation: -i*angle,ease:Bounce.easeOut});
 }
}

9、最后添加一个监听单击事件的代码。

 menu.addEventListener(MouseEvent.CLICK,clickHandler );
function clickHandler(e:MouseEvent ):void{
 // TO DO ...
 trace(myButton(e.target).labelBtn.text);
}

 10、所有代码如下。

import com.greensock.*;
import com.greensock.easing.*;
var menu_items:Array = ["HOME","ABOUT ME","PORTFOLIO","BLOG","CONTACT"];
var menu:Sprite = new Sprite();
menu.x= stage.stageWidth / 2;
menu.y=stage.stageHeight /2;
addChild(menu);
buildMenu();
function buildMenu(){
 var btn:myButton;
 var angle:int=360/menu_items.length;
 for (var i:int = 0; i< menu_items.length; i++){
  btn = new myButton();
  btn.buttonMode=true;
  btn.labelBtn.text = menu_items[i];
  btn.mouseChildren=false;
  menu.addChild(btn);
  TweenLite.to(btn,2,{rotation: -i*angle,ease:Bounce.easeOut});
 }
}
menu.addEventListener(MouseEvent.CLICK,clickHandler );
function clickHandler(e:MouseEvent ):void{
 // TO DO ...
 trace(myButton(e.target).labelBtn.text);
}