动画教程之Flash MX 2004新特征实例(3)
Flash是一种动画创作与应用程序开发于一身的创作软件,到2013年9月2日为止。实例3、CustomizingContextMenu 1、触及特征
这个实例反应了FlashMX2004在编程方面的严重改善。个中包含了as文件的使用,体系的_global.$clipboard变量的利用,ContextMenu(menufun)函数的挪用,ContextMenuItem()函数的挪用,已MovieClip.prototype.menu变量的利用。经由过程这几个函数和变量的操纵,就能够轻松地操纵FlashPlayer中的菜单了。
2、制造历程
1、新建一个ActionScriptFile,定名为“ClipBoard.as”,内容以下:
/*Copyright2003Macromedia,Inc.Allrightsreserved.
ThefollowingisSampleCodeandissubjecttoallrestrictions
onsuchcodeascontainedintheEndUserLicenseAgreement
accompanyingthisproduct.
*/
classClipBoardextendsObject{//正文1
staticvar$contents:Object;//正文2
staticvar$operation:String;//正文3
functionClipBoard(){}//正文4
staticpublicfunctioncut(obj){//正文5
obj._alpha=50;//正文6
$contents=obj;//正文7
$operation="cut";//正文8
}
staticpublicfunctioncopy(obj){//正文9
$contents=obj;
$operation="copy";
}
staticpublicfunctionpaste(){//正文10
if($operation=="cut"){//正文11
$contents._x=_root._xmouse;//正文12
$contents._y=_root._ymouse;
$contents._alpha=100;//正文13
$contents=undefined;//正文14
$operation="";//正文15
}elseif($operation=="copy"){//正文16
varnewdepth=$contents._parent.getNextHighestDepth();//正文17
varnewname=$contents._name+newdepth;//正文18
$contents.duplicateMovieClip(newname,newdepth);//正文19
$contents._parent._x=_root._xmouse;//正文20
$contents._parent._y=_root._ymouse;
$contents._alpha=100;
$contents._parent._alpha=100;
}else{
return;//正文21
}
}
publicfunctionisEmpty():Boolean{//正文22
if($contents!=undefined){//正文23
returnfalse;
}else{
returntrue;
}
}
publicfunctionhandleMenuCommand(obj,item):Void{//正文24
switch(item.caption){//正文25
case"Cutobject"://正文26
cut(obj);
break;
case"Copyobject"://正文27
copy(obj);
break;
case"Pasteobject"://正文28
paste();
break;
}
}
}
本实例有对照多的编程常识,刚打仗会有没有从动手的感到,上面来具体解说一下触及的器材。
正文1:class的意义是界说一个类,extends是暗示所界说的类的基类是Object。这个触及到编程的面向工具,大概对照难明,能够把Object当作是所界说的类的父类,父类具有的办法和属性,在子类中都是有的。
正文2:界说一个变量contents,范例为Object。FlashMX2004中都是如许界说变量的。在此处界说的变量,在全部类中都是能够用的。
正文3:界说一个变量operation,范例为String。
正文4:这是类的机关函数,所谓的机关函数就是当实例化这个类的时分所挪用的函数。好比本类的实例化能够是如许的:ClipBoardcb=newClipBoard();
正文5:界说一个cut函数,传进的参数是obj,它的挪用局限是public,也便是任何类都能够挪用。
正文6:设置传进的obj的alpha属性为50。
正文7:设置正文2中所界说的变量的值为obj。
正文8:设置正文3所界说的变量的值为“cut”。
正文9:界说一个copy函数,传进的参数是obj,挪用局限是public。
正文10:界说一个paste函数,没有传进的参数,挪用局限是public。
正文11:判别所界说的operation的值是不是为“cut”。
正文12:设置contents的xy坐标为鼠标的xy坐标。
正文13:设置contents的alpha为100。
正文14:使用完contents的值后,将contents的值从头设置为undefined。
正文15:将operation的值清空。
正文16
Flash8支持一种新的编码格式(On2的VP6),这种编码格式与Flash7的视频编码格式相比,有了很大的提高。 单纯的做动画而言,flash动画与传统动画有很多差别,这里会为你介绍什么是flash与flash与传统动画相比具有的优点和缺点,而进一步了解flash动画 单纯的做动画而言,flash动画与传统动画有很多差别,这里会为你介绍什么是flash与flash与传统动画相比具有的优点和缺点,而进一步了解flash动画 Flash也可以合成简单的JavaScript函数。如果你学过某种脚本语言如JavaScript或者Macromedia的Director Lingo,你会知道这有点令人畏缩。 矢量图形相对于位图的另一个优势是可以随意缩放的能力。这是对动画进程的奖赏,对用户来说也是一个很酷的特征。在Flash之前,Web上没有这种功能。 在计算机出现之前,动画制作者必需手工绘制即使差别很小的不同祯的图像。当然,非自动的,一祯祯的动画在很多情况下仍然很有用,Flash也允许这样做。 常见的富媒体广告形式有横幅广告(BANNER,旗帜广告)按钮广告(BUTTON)弹出窗口广告(pop-up ads,弹窗)浮动广告(floting ads,飘浮广告,floaters)插播式广告(Interstitial)全屏广告(full screen)
页:
[1]