일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 아폴로케이션
- 아폴로
- stage3d
- ActionScript
- 플래시
- Flex
- 주식
- 플렉스
- framework
- 책
- starling
- 도서
- 어도비
- Papervision3D
- Flash
- Silverlight
- 3.0
- XAML
- Papervision
- Genome2D
- 마이크로소프트
- Air
- 액션스크립트
- API
- adobe
- 실버라이트
- 워렌 버핏
- 물리엔진
- 3D
- Microsoft
- Today
- Total
WonHada.com으로 이전
Timer 클래스와 ENTER_FRAME 이벤트 본문
enterFrame을 이용해 진행시간을 조작할 수 있습니다..
하지만 enterFrame은 컴퓨터의 성능에 영향을 받아 정확하지 않죠..
AS 3.0에는 Timer 클래스가 있는데요..기존의 setInterval() 이나 setTimeout() 보다 효율적이라고 합니다..
시간에 관련해서는 Timer 클래스를 사용할 것을 권장합니다..
아래는 Timer 클래스와 ENTER_FRAME 이벤트를 이용해 3초 후 결과를 보여줍니다..
=======================================================================
import flash.utils.*;
import flash.events.*;
//Timer 를 이용해 3초 후 결과 보기
var timer:Timer = new Timer(1000,3);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerComplete);
timer.start();
function onTimerComplete(event:TimerEvent):void {
var date:Date = new Date();
trace("timerComplete", date.getTime());
}
//ENTER_FRAME 을 이용해 3초 후 결과 보기
var t:uint = 0;
this.addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(event:Event):void{
t++;
if(t>=12*3){ //fps가 12입니다. 따라서 12*3 은 3초
this.removeEventListener(Event.ENTER_FRAME, onEnterFrame);
var date:Date = new Date();
trace("enterFrame Complete", date.getTime());
}
}
=======================================================================