おとやすみ日記

ゲームプランナー、一児の父です。

ダブルクリックを検出(当然ながらAS2)

クリックとダブルクリックで動作が変わるボタンを作る機会があったので。AS3だとダブルクリックをとれるんだけどAS2だとそれができないのでメモメモ。


doubleClick();
function doubleClick():Void {

var duration:Number=200;//ダブルクリック時間定数msec

var clickN:Number=0;//クリック回数

var intervalId:Number;

mc.onPress = function(){

clickSD();

}

var clickSD = function():Void{

clickSD2 = function():Void{

if(clickN==1){

trace("single");

} else if(clickN>1){

trace("double");

}

clearInterval(intervalId);//間隔をクリアする

clickN=0;//クリック回数を0に戻す

}

if(clickN==0)intervalId = setInterval(_root, "clickSD2", duration);//durationにて設定した時間後にclickSD2関数呼び出し

clickN+=1;//クリック回数を増やす

}

}