论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash教程
Tag:flash cs,flash 8,鼠绘,as,手绘,工具,文字,loading,入门,初学,mc,影片剪辑,声音,mtv,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

纯AS的百叶窗效果

文章类别:Flash | 发表日期:2008-9-21 19:21:28

  心血来潮做了这个东东,总算调好了,大家指点指点
点击浏览该文件(已更新,问题已经解决了)
怪事:在网页里看不到AS的百叶窗特效,可是下载以后就可以看到,这是为什么?!!(有奖解答,奖励1分)
问题已经解决了:这一分奖励自己吧
点击浏览该文件(记得把第一句注释了)
http://www.flash8.net/bbs/UploadFile/2005-2/200522616029264.swf

代码如下:

// 禁制自动缩放。都是这句惹得祸!!!
// 当在网页中需要影片宽度或高度,千万不能用这句!!!
// 最好直接指定!!!
// Stage.scaleMode = "noScale";
// 引用根影片
var root_mc:MovieClip = _root;
// 新建容器影片
var container_mc:MovieClip = root_mc.createEmptyMovieClip("container_mc", 1);
// 新建遮罩板
var maskBoard_mc:MovieClip = container_mc.createEmptyMovieClip("maskBoard_mc", 1);
// 在遮罩板上新建遮罩条
var maskBar_mc:MovieClip = maskBoard_mc.createEmptyMovieClip("maskBar_mc", 1);
with (maskBar_mc)
{
beginFill(0x000000, 100);
lineStyle(0, 0xFF0000, 0);
moveTo(0, 0);
lineTo(Stage.width, 0);
lineTo(Stage.width, Stage.height / 10);
lineTo(0, Stage.height / 10);
endFill();
}
var maskBarName:String = maskBar_mc._name;
var makBarHeight:Number = maskBar_mc._height;
// 设置垂直递减量
var DESCENDING = 3;
// 复制遮罩条
for (var i = 0; i < 10; i++)
{
var temp_mc:MovieClip = maskBar_mc.duplicateMovieClip(maskBarName + i, maskBoard_mc.getNextHighestDepth());
temp_mc._x = maskBar_mc._x;
temp_mc._y = maskBar_mc._y + i * maskBar_mc._height;
}
// 移除原始遮罩条
maskBar_mc.removeMovieClip();
//
var up_mc:MovieClip = container_mc.attachMovie("imageSet_mc", "up_mc", 3);
var down_mc:MovieClip = container_mc.attachMovie("imageSet_mc", "down_mc", 2);
down_mc.nextFrame();
// 加载logo
var logo_mc:MovieClip = container_mc.attachMovie("logo_mc", "logo_mc", 4);
// 设置点击事件
container_mc.onPress = function()
{
// 按钮影片剪辑不可用
this.enabled = false;
// 隐藏鼠标
Mouse.hide();
for (var i = 0; i < 10; i++)
{
var temp_mc:MovieClip = maskBoard_mc[maskBarName + i];
//trace(temp_mc);
temp_mc.onEnterFrame = function()
{
this._height -= DESCENDING;
// 最后一条遮罩条高度为0时
if (this._name == maskBarName + 9 && this._height == 0)
{
(down_mc._currentframe < down_mc._totalframes) ? down_mc.nextFrame() : down_mc.gotoAndStop(1);
(up_mc._currentframe < up_mc._totalframes) ? up_mc.nextFrame() : up_mc.gotoAndStop(1);
for (var i = 0; i < 10; i++)
{
var temp_mc:MovieClip = maskBoard_mc[maskBarName + i];
temp_mc._height = makBarHeight;
delete temp_mc.onEnterFrame;
}
// 显示鼠标
Mouse.show();
// 按钮影片剪辑被启用
container_mc.enabled = true;
}
};
}
};
up_mc.setMask(maskBoard_mc);

补充:

Stage.width

可用性

Flash Player 6。

用法

Stage.width

说明

属性(只读);以像素为单位指示舞台的当前宽度。当 Stage.scaleMode 的值为 "noScale" 时,width 属性表示播放器的宽度。当 Stage.scaleMode 的值不为 "noScale" 时,width 表示 SWF 文件的宽度。

另请参见

Stage.align, Stage.height, Stage.scaleMode
上一篇:{应用}影片的倒带效果 人气:2806
下一篇:{应用}仿CCTV导航栏效果 人气:1342
视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058