WEB开发网
开发学院图形图像Flash Flash AS教程:用计时的方法判断双击的代码 阅读

Flash AS教程:用计时的方法判断双击的代码

 2007-08-13 11:05:53 来源:WEB开发网   
核心提示:前几天在群里有人问判断双击除了用getTimer外还有没有其它的方法, 心血来潮就写了个方法,Flash AS教程:用计时的方法判断双击的代码, 主要是用计时的方法,下面是代码:classdevil.com.btn.original.DoubleClick{/**SetupanObjecttocitingaobject

前几天在群里有人问判断双击除了用getTimer外还有没有其它的方法, 心血来潮就写了个方法, 主要是用计时的方法。下面是代码:classdevil.com.btn.original.DoubleClick{
/**
 SetupanObjecttocitingaobject(btnormc)clicked
*/
privatevar_clickedObject:Object;
/**
 SetupanID 
*/
privatevar_ID:Number;
/**
 Setupadelaytime 
 */
privatevar_delayTime:Number=200;
/**
 Recordcountsobjisclicked
*/
privatevar_count:Number=0;
/**
 Chageing _delayTimeproperty
 */
publicfunctionsetdelayTime(delay:Number):Void{
 _delayTime=delay;
}
publicfunctiongetdelayTime():Number{
 return_delayTime;
}
/**
 Setupainstance
*/
publicfunctionDoubleClick(delayTime:Number){
 this._delayTime=delayTime;
}
/**
 Whenbuttonormovieclipisclickedthisclickmethodiscalled
*/
publicfunctionclick(obj:Object){
 if(this._clickedObject==undefined){
 _clickedObject=obj;
 }
 if(_count==0){
 //firstclick
 timerStart();
 _count=1;
 }else{
 this._clickedObject.onDoubleClick();
 //双击
 _count=0;
 }
}
/**
  Timerstar
*/
privatefunctiontimerStart():Void{
 clearInterval(_ID);
 _ID=setInterval(this,"timerStop",_delayTime);
}
/**
  Timerstop
*/
privatefunctiontimerStop():Void{
 clearInterval(_ID);
 if(_count==1){
 _clickedObject.onClick();
 //单击
 _count=0;
 }
}
}

下面是用法:

importdevil.com.btn.original.DoubleClick;
varb:DoubleClick=newDoubleClick(200);
b.onClick=function(){
//单击要执行的函数
trace("单击")
};
b.onDoubleClick=function(){
//单击要执行的函数
trace("单击")
};
b.onDoubleClick=function(){
//双击
trace("双击")
}
b.onRelease=function(){
_root.a.click(this)}

Tags:Flash AS 教程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接