`

重复执行某段代码

    博客分类:
  • flex
阅读更多

 

1:要广播enterFrame 事件,你要告诉你的程序去监听这个事件然后指定回调函数

addEventListener(Event.ENTER_FRAME, onEnterFrame);

2:第二个参数onEnterFrame,指向类中定义的回调函数,该函数需要传递进EVENT的一个实例:

private function onEnterFrame(event:Event):void {
      dosomething();
}

 

3. setInterval和Timer 哪个性能高.(长时间执行一个任务的解决方案)

使用Timer类,或者监听sprite的enterFrame事件

Timer 类是ActionScript 3.0新增的, 来代替早期的setInterval( ) 和setTimeout( ) 函数。当创建

 

Timer类的实例时,它会在每个时间间隔激活timer 事件,你可以在事件之间指定延时,然后就

有足够的时间去激活Timer 构造器了:

var timer:Timer = new Timer(delay, repeatCount);

使用addEventListener 来设置一个函数处理这个事件,然后使用timer的start( ) 方法启动或

stop( ) 停止它。

Timer 类属于flash.utils 包,还有TimerEvent 类在flash.events 包中,因此需要导入它们:

 

package {
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class ExampleApplication extends Sprite {
private var _PreviousTime:Number = 0;
public function ExampleApplication( ) {
var tTimer:Timer = new Timer(500, 10);
tTimer.addEventListener(TimerEvent.TIMER, onTimer);
tTimer.start( );
}
private function onTimer(event:TimerEvent):void {
trace(flash.utils.getTimer( ) - _PreviousTime);
_PreviousTime = flash.utils.getTimer( );
}
}
}
 

getTimer( ) 函数已经被移动到flash.utils 包中了。它返回程序开始有到现在的相对时间(微妙)

 

上个例子中,事件每隔5毫秒激活一次。如果你想模拟setInterval( ) 函数,把重复次数设为0。

stop( ) 方法类似于clearInterval( ) 函数,停止定时器.

如果想模拟setTimeout( )函数,设置重复数为1,定时器等到指定时间激活一次事件,然后停止。

Timer类最好的用处就是创建动画而不依赖于影片帧速。看下面的例子,两个定时器时间间隔分

别为50微妙和100微妙:

 

package {
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class ExampleApplication extends Sprite {
private var _square:Sprite;
private var _circle:Sprite;
public function ExampleApplication( ) {
// 创建两个图形
_square = new Sprite( );
_square.graphics.beginFill(0xff0000);
_square.graphics.drawRect(0, 0, 100, 100);
_square.graphics.endFill( );
addChild(_square);
_square.x = 100;
_square.y = 50;
_circle = new Sprite( );
_circle.graphics.beginFill(0x0000ff);
_circle.graphics.drawCircle(50, 50, 50);
_circle.graphics.endFill( );
addChild(_circle);
_circle.x = 100;
_circle.y = 200;
// 创建两个定时器,启动
var squareTimer:Timer = new Timer(50, 0);
squareTimer.addEventListener(TimerEvent.TIMER, onSquareTimer);
squareTimer.start( );
var circleTimer:Timer = new Timer(100, 0);
circleTimer.addEventListener(TimerEvent.TIMER, onCircleTimer);
circleTimer.start( );
}
// 定义两个事件句柄
private function onSquareTimer(event:TimerEvent):void {
_square.x++;
}
private function onCircleTimer(event:TimerEvent):void {
_circle.x++;
}
}
}
 

当然用enterFrame 事件也可以实现的,但Timer 技术更加灵活。

分享到:
评论

相关推荐

    一段女生写的C语言代码(搞笑) - -

    2. **循环结构**:`while` 和 `for` 循环可以帮助我们重复执行某段代码,直至达到预定条件为止。 3. **函数定义与调用**:函数可以封装代码块以便重复使用,提高代码的可读性和可维护性。 4. **变量声明与赋值**:...

    重复n遍同一句话

    在小程序中,你可以通过编写相应的JavaScript代码实现重复执行某段代码的功能,比如在用户界面显示动态效果或定时推送消息。 4. **自动化工具**:如`AutoHotkey`或`Macros`等工具,可以录制并重复执行一系列键盘和...

    试卷python二级模拟题.docx

    10. Python语言中的循环语句可以用于重复执行某段代码。 11. Python语言中的函数可以用于封装一段代码,并可以重复使用。 12. Python语言中的模块可以用于组织相关的函数和变量。 13. Python语言中的文件IO可以...

    C#入门经典全部源代码+使用说明(最新版的没一章的代码)

    例如,"控制流"部分的源代码可能包含if语句、switch语句、循环(for、while、do-while)的实例,这些代码可以帮助读者理解如何根据条件执行不同的代码块或者重复执行某段代码。而在"类与对象"部分,源代码会展示如何...

    计算机c语言简单编程

    循环语句可以让程序重复执行某段代码,直到满足特定的条件。在本资源中,我们可以看到循环语句的应用,如计算1+2+3+……+100的和、计算1*2*3*……*10的积等。 2. 数组: 数组是一种基本的数据结构,用于存储多个...

    VB 源代码收集器

    例如,If语句用于根据条件执行不同的代码块,循环语句则用于重复执行某段代码。 3. **函数和方法**:VB提供了丰富的内置函数,如Math函数用于数学运算,String函数用于字符串操作。此外,用户还可以自定义函数和...

    谭浩强 c++源代码

    这些章节通过实例展示了如何根据条件执行不同代码块,以及如何重复执行某段代码,是理解和编写逻辑流程的关键。 4. **函数**:C++中的函数是代码复用的基础。源代码会演示如何定义和调用函数,以及如何传递参数和...

    Python爱心源码(内附完整代码和项目,可运行)

    4. **循环结构**:如for循环和while循环,用于重复执行某段代码直到满足特定条件。 5. **字符与字符串处理**:通过选择不同的字符组合形成图案。 6. **Python IDE的使用**:了解如何在PyCharm中创建项目、运行代码...

    ppt应用之vba常用代码

    7. **条件语句和循环**:VBA中的If...Then...Else和For...Next等语句用于控制流程,允许基于条件执行不同的代码块或重复执行某段代码。 8. **数组和集合**:在VBA中,你可以使用数组存储多个值,使用集合对象处理一...

    JavaScript教程源代码.rar

    接着,JavaScript的控制流允许我们根据不同的条件执行不同的代码块,比如if...else语句用于条件判断,for和while循环则用于重复执行某段代码。函数是可重用的代码块,它们封装了特定的任务,可以接受参数并返回结果...

    Python程序设计-第4章-循环结构程序设计(第6次课).ppt

    在Python程序设计中,循环结构是程序控制流程的重要部分,它允许我们重复执行某段代码,直到满足特定条件为止。本章主要介绍了三种基本的程序设计结构:顺序结构、选择结构和循环结构。 顺序结构是最基础的结构,...

    C语言教程习题源代码及实验源代码

    循环结构如for和while用于重复执行某段代码,直到满足特定条件为止。此外,还有do...while循环,它先执行一次循环体,然后检查条件。 三、数组与指针 C语言中的数组是同类型元素的集合,可以通过下标访问每个元素。...

    超酷jS代码(绝版)

    for循环则用于重复执行某段代码,直到满足特定条件为止。这些基础语法是编写任何JavaScript代码的基础。 函数是可重用的代码块,可以接受参数并返回结果。在JavaScript中,函数也可以作为变量赋值、作为参数传递和...

    C语言经典编程24例【必看】.pdf

    while循环和do while循环是C语言编程中两种基本的循环结构,用于重复执行某段代码。while循环用于循环执行某段代码,直到条件为假;do while循环用于循环执行某段代码,直到条件为假。 5. 一些经典的编程例题 本...

    python语言教程学习 python语法介绍总结.doc

    控制结构使程序能够根据条件执行不同代码块,或重复执行某段代码。 如何学习 阅读官方文档或权威教程,了解Python的基本概念和语法。 动手实践,编写简单的Python程序,如打印输出、计算表达式等。 使用在线编程...

    dnf代码大全文.pdf

    在编程中,循环是常用的控制结构,用于重复执行某段代码直至满足特定条件。如“***...”这样的序列,如果视作循环迭代中的索引或计数器,可能就是控制循环次数的关键。 5. 缺失信息的填补:文档中出现了一些缺失...

    模拟飞行-少儿编程scratch项目源代码文件案例素材.zip

    5. **循环结构**:循环是编程中重复执行某段代码的结构。在模拟飞行游戏中,可能需要使用"重复执行"积木块让飞机持续飞行,或者在特定条件下重复执行某些动作。 6. **变量与数据**:变量用于存储和传递信息。在游戏...

    oracle学习的示例代码

    通过这些语句,你可以根据条件执行不同的操作或重复执行某段代码。 4. **游标**:在Oracle中,游标用于逐行处理查询结果。在`procday02`中,可能有如何声明、打开、读取和关闭游标的示例。 5. **异常处理**:使用`...

    ATM自动取款机c代码

    这些语句允许程序根据不同的条件执行不同的代码路径,或者重复执行某段代码直到满足特定条件为止。例如,在`main()`函数中,使用`do...while`循环来持续请求用户输入正确的密码,直到输入正确或尝试次数达到三次为止...

    一段简单的while和if语句嵌套使用的C++代码(初学者了解)

    在程序设计中,`while`循环用于重复执行某段代码,直到满足特定条件为止,而`if`语句则用于根据条件来决定是否执行某段代码。在这段代码中,`while`和`if`语句的结合帮助实现了一个简单的用户交互式菜单系统。 首先...

Global site tag (gtag.js) - Google Analytics