2

FlashFirebug アドオンの as3 コンソールでタイマーを使用しようとしましたが、機能しません (いくつかの組み合わせを試しました)。タイマーコードは次のとおりです。

import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.Sprite;    

var myTimer = new Timer(1000, 2);
myTimer.addEventListener(TIMER, timerHandler);
myTimer.start();

function timerHandler(event:TimerEvent){trace("timerHandler: ");}

//しかし、このエラーが発生します:

Error #1034: Type Coercion failed: cannot convert r1.deval.rt::FunctionDef@50ef781 to Function.

// また、このコードで setInterval を試しました:

import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.Sprite;
import flash.utils.setInterval;
function d(){trace("cc");}
setInterval(d, 2000);

//しかし、コンソールエラーは次のように言います:

Error: Call to a possibly undefined method.

//おそらく何かをインポートする必要があります。import "import flash.utils.setInterval;" を試してみました しかし、このエラーが発生します:「エラー:インスタンス化する前にクラスをインポートする必要があります。例:インポートflash.display.MovieClip;」

これについて私を助けてもらえますか?タイマーまたは setInterval 関数? ありがとう、ジョン

4

5 に答える 5

0

まあ、これを達成する方法はないようです。FlashFirebugはD.evalライブラリを使用していますが、現在タイマーまたは間隔をサポートしていることがわかりません。

于 2012-05-14T12:49:25.983 に答える
0

問題は次の行にあります。

myTimer.addEventListener(TIMER, timerHandler);

そのはず:

myTimer.addEventListener(TimerEvent.TIMER, timerHandler);
//              add this ^^^^^^^^^^^
于 2013-06-24T10:00:10.287 に答える
0

表示されるエラー メッセージについてはわかりませんが、タイマーにイベント リスナーを割り当てる時点でコードにエラーがあります。次のように、TimerEvent クラスからイベント名定数にアクセスする必要があります。

import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.Sprite;    

var myTimer = new Timer(1000, 2);
myTimer.addEventListener(TimerEvent.TIMER, timerHandler);
myTimer.start();

function timerHandler(event:TimerEvent){trace("timerHandler: ");}

setInterval よりも ActionScript 3.0 の Timer クラスを使用する利点について、適切な説明がここにあります。

于 2012-05-14T09:19:44.493 に答える