Tween类写成的全代码弹性菜单

Tween类写成的全代码弹性菜单
我并不打算详细说说这个菜单,全代码的,大家粘贴到主场景第一帧就可以了,这里只是说说重点.

我定义了两个函数,第一个是创建菜单选项,也就是方块和文字的,第二个创建运动的.我只是把末数量变成参数,这样在rollOver/rollOut时都可以用同一个函数.

最上面三个数组是关于菜单的定义的,包括颜色,文字和URL.

有个小小的技巧在这里面,就是用String(this._name).substr(-1,1) 来获得当前MC的序号,这样就可以把复制出来的MC定义转向到不同的URL.我的另一篇教程也有讲这个,不过说得太长了...(我是有点儿唐僧-___-#).

下面是代码:

mcColorArray = [0xF00000, 0xFF0000, 0xFFF000, 0x0FFF00, 0xFF0FF0, 0xF0FFF0];
//定义菜单方块的颜色
mcText = ["main", "news", "blog", "downloads", "about", "links"];
//定义菜单文字
urlArray=["#1","#2","#3","#4","#5","#6"];
//定义菜单跳转到URL
function createMc(mcName, mcX, mcY, mcDepths, mcColor, mcText) {
_root.createEmptyMovieClip(mcName, mcDepths);
with (eval(mcName)) {
_x = mcX;
_y = mcY;
lineStyle(1, 0x000000, 0);
beginFill(mcColor, 100);
moveTo(30, 30);
lineTo(-30, 30);
lineTo(-30, -30);
lineTo(30, -30);
lineTo(30, 30);
endFill();//定里把菜单定义为正方形
createTextField(mcText, 1, -30, -10, 60, 20);
eval(mcText).text = mcText;
eval(mcText).type = "dynamic";
var myTextFormat = new TextFormat();
myTextFormat.align = "center";
eval(mcText).setTextFormat(myTextFormat);
}
}
//创建菜单选项
function TweenMove(mcID, endData) {
TweenWidth = new mx.transitions.Tween(eval(mcID), "_width", mx.transitions.easing.Elastic.easeOut, eval(mcID)._width, endData, 2, true);
TweenHeight = new mx.transitions.Tween(eval(mcID), "_height", mx.transitions.easing.Elastic.easeOut, eval(mcID)._height, endData, 2, true);
}
//创建运动
for (var i = 0; i createMc("mcMenu"+i, 50+i*70, 50, i+1984, mcColorArray, mcText);//创建菜单
eval("mcMenu"+i).onRollOver = function() {
TweenMove(this, 80);
};
eval("mcMenu"+i).onRollOut = function() {
TweenMove(this, 60);
};
eval("mcMenu"+i).onRelease=function(){
var urlocation=String(this._name).substr(-1,1);
getURL(urlArray[urlocation],"_blank");
}//定义菜单方法.
}

转载于:https://www.cnblogs.com/savageworld/archive/2006/07/29/462960.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值