加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

flash学习笔记(一)---基础知识入门

发布时间:2020-12-15 06:16:05 所属栏目:百科 来源:网络整理
导读:第一章 基础入门 1、? 第一个小例子:先声明类才能代码自动提示。 importflash.display.MovieClip; ? //stop(); varaction1:MovieClip; gotoAndStop(15); //stop(); trace("1"); 2、? Hello world!:书本上例题错误。 varStr:String = "Hello World!"; varm

第一章 基础入门

1、? 第一个小例子:先声明类才能代码自动提示。

importflash.display.MovieClip;

?

//stop();

varaction1:MovieClip;

gotoAndStop(15);

//stop();

trace("1");

2、? Hello world!:书本上例题错误。

varStr:String = "Hello World!";

varmyClick:Function = function(evt:MouseEvent){

lb.text = Str;

trace(Str);

};

btn.addEventListener(MouseEvent.CLICK,myClick);

3、? Trace语句可以在发布设置中省略

4、? Gotoandplay(scene,frame);场景和帧数

Nextframe();下一帧

Preframe();上一帧

Nextscene();下一个场景的第一帧

Prescene();上一个场景的第一帧

This.gotpandplay(currentframe+5);当前帧后面五帧停止

问题:实例方法调转测试

第二章 语法基础

1、? 1)、变量声明:var Str:String = “hello”;as3变量区分大小写

2)、数据类型:boolean、int、null、Number(NAN)、String(NULL)、uint(0)、undefined

注意:选值范围越小占用内存越小

3)、转义字符:b f t n r * ’ x00-xFFu0000-uFFFF

4)、复杂数据类型:

? 1》FunctionmyFunction():void{}------------void无返回值

? 2》Var Arr:Array;没有初始化。只是单纯定义一个数组,但不赋值。也就是在内存里只申请一个首地址,但没有定义存储长度。

var arr = newArray();//第一种;定义一个数组,并初始化它为空数组

var arr2 =[];//第二种;定义一个数组,并给它赋一个空值

注意:声明数组必须初始化;数组中元素很自由,类似链表;数组下标由0开始

?????3》Object对象数据类型:

var user:Object = new Object();
user.name = "Irving";
user.age = 32;
user.phone = "555-1234";

?????4》MovieClip数据类型:元件

? 5)、常量:自定义常量。Constcon_myage:int = 23;

2、? 关于变量:

1)、变量值中包含引号:

Var str:String = “My ”action script”is good.”;----or

Var str:String = “My ‘action script’is good.”;----交替包含

Var str:String = ‘My “action script”is good’;---交替包含

2)、var dt:Date = new Date();

3)、传值变量和传址变量(变量对于上个变量的引用,上个变量改变当前变量改变)

3、? Object:

varob:Object = new Object();

ob.name ="zhaoxin";

ob.age =19;

trace(ob.name);

trace(ob.age);

注意:var i:Sting;???? for(I in person){}为什么??属性成员变量顺序

4、? 数组:

1)、数组的维数可以自动扩展;小于索引上限的元素未定义,返回undefined;

vararr:Array = new Array();

arr[1] ="hello";

trace(arr[0]);

2)、多维数组:

vararr2:Array = new Array(new Array("1","2"),new Array("3","4"));

trace(arr2);

3)、复合数组:使用键而不是数字索引组织存储的值;类似object类

5、? Actionscript的语法结构:

1)、程序注释://?? /**/

第三章 数据运算和流程控制

1、运算符:

? 算数:+ - * / % ++ --

? 比较:<?>? < =? >=?==? !=?? &&并且? ||或者? !? ===全等(包括数据类型)?!==?

? 位运算符:&?|? ~? ^?<<? >>? >>>

? 其他运算符:as? delete? in?instanceof(不推荐使用)? is?::? new? typeof?

例子:typeof(array) asxx? 返回前者或者null

????? Typeof(array) is xx?

2、流程控制

? 1)、if?? else

?????If(condition){

???????Statement;

?????} else if(condition2){

???????Statement2;

?????} else{

???????Statement3;

?????};

? 2)、Switch语句

???? Switch(expr){

??????Case expr1:statement1;break;

??????Case expr2:statement2;break;

default:statementN;break;

????}

? 3)、do..while

While(condition){}

Do{statement}while(condition);

? 4)、for..in循环

??? For(expr1,expr2,expr3){statement}

For(variableIterant in object){statement}

例子:

Var arr:Array = new Array(“one”,”two”,”three”);

For each (var item:int in myArray){

? Trace(item);------ 所包含的属性(或成员,或变量)

}

for..in是把数组的元素或对象的属性名依次取过来。

for each..in是把对象的属性名对应的值依次取过来

?5)、label标签语句:跳到label所在行继续执行。

?? Label:

?? Break? label;

?6)、try。。catch。。finally

?? Try{}catch()finally{}

??? ?Throw new error(“这是不合法的Email地址”);

3、使用with语句

?? Varobj:Date = new Date();

?? With(obj){

???? Trace(getDay());

???? Trace(getMonth()+1);

?? }

第四章 全局函数和自定义函数

1、Trace();调试

2、转移操作函数:escape()/encodeUrl()/encodeURLComponent()

3、转换函数:parseFloat/parseInt/Number()/String()/Boolean()/int()/Uint()/XML()/XMLList()/

4、判断函数:isXMLName()/isFinite()是否有限数/isNAN()是否数字/

5、自定义函数:

? 1)、Function myfunc(arg_1:type,arg_2:type,…,arg_n:type):type{return “”;}

? 2)、…(rest)动态参数? function traceargarray(…args):void{

???????For(var i:uint = 0;i<args.length;i++){

???????????Trace(args[i]);

?????????}?? }

?3)、匿名函数的定义:varmyfunc:Function = function(arg_1:type,arg_n:type)

????{return “”;}

总结

1、 关于图层:在不同的图层添加不同的对象,使操作更加便利。

2、 关于帧:

1>空白关键帧在空白关键帧上我们可以任意的绘制图形

2>关键帧就是添加了对象的空白关键帧,

3>空白帧就是留个空位置的帧什么都不做,比如有10帧是空白帧,那当时间轴跑到这10帧的时候就什么都不做,连图象都不显示。

3、 动作的元件:

1>如果要给一个元件做动画的话 这个元件就一定单独在一个图层里

2>也就是说,如果有10原件要动,那么这10个元件就要建10个图层,不能放在同一个图层里。

3>这就取决你原件的数量了。

记住一句话 一个图层里只能有一个要动的原件。

4、 建立了图层后,怎么添加边框:

在最顶上图层,画一个矩形框。双击矩形框的边线。

ctrl+k打开对齐面板点选右边的相对于舞台按钮。

找到匹配高跟宽按钮,点击一下,现在边线应该跟场景一样大小了。继续点击水平居中对齐,垂直居中对齐,这时候线框跟舞台的边完全重合了。

最后选择矩形的中间部分按delete键删除。

5、 那些对象可以添加添加动作脚本:

A、关键帧(也包括空白关键帧)

B、按钮

C、影片剪辑

6、 按钮上停止:

按钮上写

on(release) {

?gotoAndPlay("场景名",1);

}

7、 锯齿:图像折叠失真:物体边缘呈现三角形的锯齿

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读