`
njs458sd
  • 浏览: 13975 次
社区版块
存档分类
最新评论

AS3处理对象

 
阅读更多

AS3处理对象
2009年07月14日
  属性
  属性表示某个对象中绑定在一起的若干数据块中的一个。Song 对象可能具有名为 artist 和 title 的属性;MovieClip 类具有 rotation、x、width 和 alpha 等属性。您可以像使用单个变量那样使用属性;事实上,可以将属性简单地视为包含在对象中的“子”变量。
  以下是一些使用属性的 ActionScript 代码的示例。以下代码行将名为 square 的 MovieClip 移动到 100 个像素的 x 坐标处:
  square.x = 100;
  此代码使用 rotation 属性旋转 square MovieClip,以便与 triangle MovieClip 的旋转相匹配:
  square.rotation = triangle.rotation;
  此代码更改 square MovieClip 的水平缩放比例,以使其宽度为原始宽度的 1.5 倍:
  square.scaleX = 1.5;
  请注意上面几个示例的通用结构:将变量(square 和 triangle)用作对象的名称,后跟一个句点 (.) 和属性名(x、rotation 和 scaleX)。句点称为点运算符,用于指示您要访问对象的某个子元素。整个结构“变量名-点-属性名”的使用类似于单个变量,作为计算机内存中的单个值的名称。
  方法
  方法是指可以由对象执行的操作。例如,如果在 Flash 中使用时间轴上的几个关键帧和动画制作了一个影片剪辑元件,则可以播放或停止该影片剪辑,或者指示它将播放头移到特定的帧。
  下面的代码指示名为 shortFilm 的 MovieClip 开始播放:
  shortFilm.play();
  下面的代码行使名为 shortFilm 的 MovieClip 停止播放(播放头停在原地,就像暂停播放视频一样):
  shortFilm.stop();
  下面的代码使名为 shortFilm 的 MovieClip 将其播放头移到第 1 帧,然后停止播放(就像后退视频一样):
  shortFilm.gotoAndStop(1);
  正如您所看到的一样,您可以通过依次写下对象名(变量)、句点、方法名和小括号来访问方法,这与属性类似。小括号是指示要调用方法(即指示对象执行该操作)的方式。有时,为了传递执行动作所需的额外信息,将值(或变量)放入小括号中。这些值称为方法参数。例如,gotoAndStop() 方法需要知道应转到哪一帧,所以要求小括号中有一个参数。有些方法(如 play() 和 stop())自身的意义已非常明确,因此不需要额外信息。但书写时仍然带有小括号。
  与属性(和变量)不同的是,方法不能用作值占位符。然而,一些方法可以执行计算并返回可以像变量一样使用的结果。例如,Number 类的 toString() 方法将数值转换为文本表示形式:
  var numericData:Number = 9; var textData:String = numericData.toString();
  例如,如果希望在屏幕上的文本字段中显示 Number 变量的值,应使用 toString() 方法。TextField 类的 text 属性(表示在屏幕上显示的实际文本内容)被定义为 String,所以只能包含文本值。下面的一行代码将变量 numericData 中的数值转换为文本,然后使这些文本显示在屏幕上名为 calculatorDisplay 的 TextField 对象中:
  calculatorDisplay.text = numericData.toString();
  事件
  我们已经介绍了计算机程序就是计算机分步执行的一系列指令。一些简单的计算机程序仅包括计算机执行的几个步骤以及程序的结束点。然而,ActionScript 程序可以保持运行、等待用户输入或等待其它事件发生。事件是确定计算机执行哪些指令以及何时执行的机制。
  本质上,事件就是所发生的、ActionScript 能够识别并可响应的事情。许多事件与用户交互有关 ― 如用户单击按钮或按键盘上的键,但也有其它类型的事件。例如,如果使用 ActionScript 加载外部图像,有一个事件可让您知道图像何时加载完毕。本质上,当 ActionScript 程序正在运行时,Adobe Flash Player 和 Adobe AIR 只是坐等某些事情的发生,当这些事情发生时,它们将运行您为这些事件指定的特定 ActionScript 代码。
  创建对象实例
  当然,在 ActionScript 中使用对象之前,该对象首先必须存在。创建对象的步骤之一是声明变量;然而,声明变量仅仅是在计算机的内存中创建一个空位置。在尝试使用或操作变量之前,您必须为变量指定实际值(即创建一个对象并将之存储在变量中)。创建对象的过程称为实例化 对象,也就是创建特定类的实例。
  有一种创建对象实例的简单方法完全不涉及 ActionScript。在 Flash 中,当将一个影片剪辑元件、按钮元件或文本字段放置在舞台上,并在“属性”检查器中为它指定实例名时,Flash 会自动声明一个拥有该实例名的变量、创建一个对象实例并将该对象存储在该变量中。同样,在 Adobe Flex Builder 中,当您在 MXML 中创建一个组件(通过用 MXML 标签进行编码或通过将组件放置在处于设计模式下的编辑器中)并为该组件分配一个 ID(在 MXML 标记中或在 Flex 属性视图中)时,该 ID 会成为一个 ActionScript 变量的名称,并且会创建该组件的一个实例并将之存储在该变量中。
  然而,您不会总是希望直观地创建对象。还可以通过几种方法来仅使用 ActionScript 创建对象实例。首先,借助几个 ActionScript 数据类型,可以使用文本表达式(直接写入 ActionScript 代码的值)创建一个实例。下面给出了一些示例:
  文本数字值(直接输入数字):
  var someNumber:Number = 17.239; var someNegativeInteger:int = -53; var someUint:uint = 22;
  文本字符串值(用双引号将本文引起来):
  var firstName:String = "George"; var soliloquy:String = "To be or not to be, that is the question...";
  文本布尔值(使用字面值 true 或 false):
  var niceWeather:Boolean = true; var playingOutside:Boolean = false;
  文本数组值(在方括号中包含以逗号分隔的值列表):
  var seasons:Array = ["spring", "summer", "autumn", "winter"];
  文本 XML 值(直接输入 XML):
  var employee:XML =          Harold         Webster     ;
  ActionScript 还为 Array、RegExp、Object 和 Function 数据类型定义了文本表达式。有关这些类的详细信息,请参阅处理数组、使用正则表达式和Object 数据类型。
  对于其它任何数据类型而言,要创建一个对象实例,应将 new 运算符与类名一起使用,如下所示:
  var raceCar:MovieClip = new MovieClip(); var birthday:Date = new Date(2006, 7, 9);
  使用 new 运算符创建对象通常称为“调用类的构造函数”。构造函数是在创建类的实例的过程中调用的一种特殊方法。请注意,当以此方法创建实例时,请在类名后加上小括号,有时还可以指定参数值 ― 调用方法的同时还需执行这两项操作。
  请注意,甚至对于可使用文本表达式创建实例的数据类型,也可以使用 new 运算符来创建对象实例。例如,下面的两行代码执行的是相同的操作:
  var someNumber:Number = 6.33; var someNumber:Number = new Number(6.33);
  熟悉使用 new ClassName() 创建对象的方法是非常重要的。如果需要创建无可视化表示形式(因而无法通过将项目放置在 Flash 舞台上来创建,也无法在 Flex Builder 的 MXML 编辑器的设计模式下创建)的 ActionScript 数据类型的一个实例,则只能通过使用 new 运算符在 ActionScript 中直接创建对象来实现此目的。
  具体到 Flash 中,new 运算符还可用于创建已在库中定义、但没有放在舞台上的影片剪辑元件的实例。有关此项内容的详细信息,请参阅使用 ActionScript 创建 MovieClip 对象。
分享到:
评论

相关推荐

    as3比较详尽的工具类

    DisplayHelper.as ---------------------- 处理显示对象简便操作 hitTestObjects.as ---------------------- 像素级碰撞检测 LoaderSprite.as ---------------------- 处理Loader相关的Sprite Registration.as -...

    AS3语法大全

    AS3语法大全 。AS3即ActionScript3.0的简称。 ActionScript 动作脚本是遵循 ECMAscript第四版 的 Adobe Flash Player 运行时环境的编程语言。它在 Flash 内容和应用程序中实现交互性、数据处理以及其他功能。 ...

    AS3中的事件处理.txt

    事件处理系统是交互式程序设计的重要基础。利用事件处理机制,可以方便的相应用户输入和系统事件。ActionScript 3.0的事件机制基于文档对象模型(DOM3)。

    as3.0编程手册.pdf

    3.ActionScript 语言及其语法 4.ActionScript 中面向对象的编程 5.处理日期和时间 6.处理字符串 7.处理数组 8.处理错误 9.使用正则表达式 10.处理事件 11.处理 XML 12.显示编程 13.处理几何结构 14.使用绘图 API 15....

    adobe starling as3 flash 3d Starling演讲PPT以及附件

    内容包括AS3 项目源文件两个 包含PDF中提到的例子 以及运行效果SWF10个 在Stage3D出现之前,Flash3D引擎( Papervision3D, Away3D,…)都是软解 CPU是通用处理器,没有为渲染三角形而优化过 Stage3D是一个新的Flash...

    as3 接口类的用法和好处

    在AS3里,与对象类型有关的运算主要有以下几种: getQualifiedClassName getQualifiedSuperclassName is instanceof(还是推荐用is代替) as getQuailiedClassName可以获取该对象的类型,返回的是类名。假若my_txt是...

    Flash as3.0详细教程

    适于初学者的as3.0教程 编程基础 .23 计算机程序的用途 .23 ...处理对象 .26 属性 .26 方法. 27 事件.28 基本事件处理 .28 了解事件处理过程 .29 事件处理示例 .33 创建对象实例..33 常用编程元素 .35

    竞赛刚获奖的AS3游戏

    AS3即ActionScript3.0的简称。 ActionScript 动作脚本是遵循 ECMAscript第四版 的 Adobe Flash Player 运行时环境的编程语言。它在 Flash 内容和应用程序中实现交互性、数据处理以及其他功能。 ActionScript是Flash...

    flash_as3_programming.pdf

    非常榜的actionscript手册,教你: 使用绘图 API 处理事件 显示编程 处理几何结构 过滤显示对象 处理位图 在三维 (3D) 环境中工作 处理视频 。。。。

    javascript使用Blob对象实现的下载文件操作示例

    最近在做以post请求方式导出excel时,想到了可以使用Blob对象将后台返回的输出流以arraybuffer或blob的格式接收交给Blob处理,最后使用URL生成链接,供浏览器下载excel。 环境 vue2.x webpack3.x axi

    as3midilib:用于处理MIDI数据的ActionScript 3.0库

    它可以手动用于将MIDI数据流解析为对象,也可以用于连接MIDI套接字服务器并接收现场演奏MIDI。 它也可以用于解析MIDI文件或流式传输它们以进行性能同步。接收现场演奏MIDI import com.newgonzo.midi.io.* ;import ...

    MATLAB图形图像处理

    4.5.6 saveas 函数 4.5.7 hgload 函数和 hgsave 函数 4.5.8 newplot 函数 第五章 GUI 设计 5.1 认识 GUI 环境 5.1.1 版面设计工具 5.1.2 属性编辑器 5.1.3 菜单编辑器 5.1.4 调整工具 5.1.5 对象浏览器 ...

    matlab6.5图形图像处理源程序

    4.5.6 saveas 函数 4.5.7 hgload 函数和 hgsave 函数 4.5.8 newplot 函数 第五章 GUI 设计 5.1 认识 GUI 环境 5.1.1 版面设计工具 5.1.2 属性编辑器 5.1.3 菜单编辑器 5.1.4 调整工具 5.1.5 对象浏览器 ...

    Delphi 调用WebService 出错

    未将对象引用设置到对象的实例。'. Process stopped. Use Step or Run to continue. InvRegistry.RegisterInvokeOptions(TypeInfo(WeatherWebServiceSoap), ioDocument); 把这句加上2005前的版本不加这个就出错...

    flash as3 开发的仿lightbox

    只有360多行代码,但是性能,展示效果,功能都比较完善还可以加载传入不同的对象还可以自动作出加载处理。事件调用和资源回收都作出了优化。下载后保证你不会后悔 里面还有tweenmax库。一次下载2个收获

    ActionScript 3.0 开发人员指南 (AS3开发帮助文档)

    第 3 章 : 使用数组 第 4 章 : 处理错误 第 5 章 : 使用正则表达式 第 6 章 : 使用 XML 第 7 章 : 使用本机 JSON 功能 第 8 章 : 处理事件 第 9 章 : 使用应用程序域 第 10 章 : 显示编程 第 11 章 : 使用...

    VC++ matlab图像处理

    4.5.6 saveas 函数 4.5.7 hgload 函数和 hgsave 函数 4.5.8 newplot 函数 第五章 GUI 设计 5.1 认识 GUI 环境 5.1.1 版面设计工具 5.1.2 属性编辑器 5.1.3 菜单编辑器 5.1.4 调整工具 5.1.5 对象浏览器 ...

    Python数据分析实践:pandas的索引处理new.pdf

    2022/3/6 4.7 pandas 的索引处理 4.7 pandas的索引处理 In [ ]: # 引入相关模块 import numpy as np # pandas和numpy 常常结合在一起使用,导入numpy库 import pandas as pd # 导入pandas库 print (pd.__version__) ...

    数据处理操作mapapplyapplymapnew.pdf

    2022/3/6 4.5 数据处理操作-map apply applymap 在日常的数据处理中,经常会对一个DataFrame进行逐行、逐列和逐元素的操作,对应这些操作,Pandas中的map、apply和applymap可以解决绝 大部分这样的数据处理需求。 ...

Global site tag (gtag.js) - Google Analytics