文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Flash影片剪辑的属性、深度及动态控制

Flash影片剪辑的属性、深度及动态控制

时间:2010-09-20  来源:黄兆张's Blog

Flash影片剪辑的属性、深度及动态控制

_focusrect

获得焦点时有无黄色边框

_soundbuftime

声音在播放前缓冲的秒数

enabled

影片剪辑是否被启用

menu

关联的ContextMenu对象

hitarea

将其他影片作为按钮点击区域

focusEnabled

允许影片获得焦点

Tabindex

标示对象的tab键的切换顺序

tabEnabled

标示影片是否有tab键顺序

tabChildren

子级有无tab键顺序

trackAsMenu

其他键是否接收release事件

useHandCurser

是否显示手形光标

3、影片剪辑属性的设置和获得。

A、setProperty(设置影片剪辑属性)命令格式:

setProperty(”实例名”,属性名,值);

例如:

setProperty(”mc”,_alpha,”30”);//将影片剪辑mc的透明度设置为30%。

也可以用with语句来设置影片剪辑的属性:

with (mc) {

_x=45;

}

B、getProperty(获得影片剪辑属性)命令格式:

getProperty(实例名,属性名)

例如:

on (press) {

var a:Number=getProperty(mc,_x);

var b:Number=getProperty(_root.mc,_alpha);// mc可以包含路劲

trace(“mc的横坐标为:”+a);

trace(“mc的透明度为:”+b);

}

C、这两个命令结合使用的实例(不但改变透明度、水平和垂直缩放比):

on (release) {

if (getProperty("mc",_alpha)!=0) {

setProperty("mc",_alpha, getProperty("mc",_alpha)-2);

setProperty("mc",_xscale, getProperty("mc",_xscale)+3);

setProperty("mc",_yscale, getProperty("mc",_yscale)+3);

}

}

二、影片剪辑的深度(depth)。

影片剪辑在swf文件中是有层级叠放顺序的,就象图层的叠放顺序一样,低级隐藏在高级之下,并且每一个深度只能容纳一个影片剪辑,所以必须为每一个影片剪辑分配一个深度值,其取值范围:-16384~1048575,_root对象的深度值是-16384,以后每添加一个递增1.

1、mc.getDepth();返回影片剪辑的深度。

2、mc(或_root).getInstanceAtDepth(depth);返还指定深度的影片剪辑实例。

mc(或_root)指检索范围。

3、mc(或_root).getNextHighestDepth();返还还没有用而可用的最大深度值.

mc(或_root)指检索范围。

mc._parent. getNextHighestDepth()-1;返还当前已用的最大深度值。

4、mc.swapDepths(depth或target);将mc的深度与depth深度上的影片剪辑的深度(或与targe影片剪辑的深度)进行交换。

交换的两个影片剪辑必须位于同一父级。

三、影片剪辑的复制和添加。

1、对位于舞台中的影片剪辑的动态复制:dupclicateMovieClip();

格式:

dupclicateMovieClip(”被复制影片剪辑实例名”,”新实例名”,深度值);

深度相同会被替换(所以要重新给一个深度值),坐标相同会被覆盖(所以要重新定坐标)。

2、对库中的影片剪辑的动态添加:attachMovie();

格式:

AnyMC(指定的场景或影片剪辑). attachMovie(“要添加的影片剪辑导航符”,”指定实例名”,depth);

如果是添加在当前的场景中:

_root. attachMovie(“要添加的影片剪辑导航符”,”指定实例名”,depth);

如果是添加到影片剪辑mc中:

mc. attachMovie(“要添加的影片剪辑导航符”,”指定实例名”,depth);

A、对库中的影片剪辑元件添加到舞台应为其设置链接标示符:

在库中元件上右击/勾选”为ActionScript导出”/在“标示符”栏输入一个英文名字(例如:ball)/点”确定”/完成。

B、添加到舞台的何位置?

如果添加到舞台_root,它会位于原点(0,0),如果添加到舞台中的另一个影片剪辑处,它会位于后者的中央。

例如:_root. attachMovie(“ball”,”ballert”,50);

C、可以利用随机函数为添加到舞台的影片剪辑随机定位,例如:

for (var i=0;i<10;i++) {

_root.attachMovie("ball","ball"+i,i);

_root["ball"+i]._x=550*Math.random();

_root["ball"+i]._y=400*Math.random();

}

3、影片剪辑的动态删除:

removeMovieClip(mc);

mc. removeMovieClip();

4、空影片剪辑的创建:

AnyMC(指定创建空影片剪辑的位置).createEmptyMovieClip(”命名”,depth);

如果是在当前的场景中创建:

_root.createEmptyMovieClip(”命名”,depth);

如果是在影片剪辑mc中创建:

mc.createEmptyMovieClip(”命名”,depth);

创建空影片剪辑ball,并往ball中添加元件water(链接标示符)代码:

_root.createEmptyMovieClip(”ball”,0);

ball.attachMovie("water","wat",0);

由于depth都是0,所以添加的影片剪辑覆盖了空影片剪辑。

四、动态创建遮罩效果setMask。

创建:my_mc.setMask(mask_mc);

取消:my_mc.setMask(null);

五、影片剪辑的碰撞检测hitTest()。

1、与某点(x,y)的碰撞(相交或重叠)检测:

mc.hitTest(x,y,true[false]);

如果重叠或相交则执行其后面的语句,例如:

if (mc.hit(x,y,true)) {

······

}

2、与某个影片剪辑的碰撞(相交或重叠)检测:

mc.hitTest(target);

如果重叠或相交则执行其后面的语句。

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载