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

Flash动画制作
Flash卡通景物绘制
鼠绘偏写实人物
鼠绘--柱顶红的画法
FLASH实现滚动条+网页书签效果
Flash MX中Button Object的用法
as入门之数学函数--弧度
as入门之数学函数--Math类
闪动的变色圆盘
组件封装为mxp文件的方法
判断数字大小
Flash 缓存问题的解决
Flash MX pro 2004 新特性之Flash Lite
在Flah MX2004的ListBox中应用HTML
Flash MX 2004中的XML应用之原理篇
Flash MX 2004视频教程超速入门系列(1)
Flash MX 2004视频教程超速入门系列(2)
Flash MX 2004视频教程超速入门系列(3)
Flash MX 2004视频教程超速入门系列(4)
Flash MX 2004视频教程超速入门系列(5)
Flash MX 2004视频教程超速入门系列(6)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-04   浏览: 74 ::
收藏到网摘: 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);
}