我一直在谷歌搜索这个“问题”一段时间,但没有任何运气。有没有办法改变双击的频率、速度,或者你想怎么称呼它?我的意思是,增加点击之间的时间并且仍然将其注册为双击。
问问题
256 次
1 回答
3
我想这是由操作系统决定的,因为具有不同可访问性需求的用户具有不同的双击时间。因此,我认为这不可能使用 Flash 播放器进行修改。
但是,如果您想模拟上述情况,我会执行以下操作:
private var timer:Timer = new Timer(1000, 1);
private var singleClickEvent:MouseEvent;
public function onSingleClick(event:MouseEvent):void
{
if (timer.running)
{
timer.removeEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
timer.stop();
dispatchEvent(new MouseEvent(MouseEvent.DOUBLE_CLICK));
}
else
{
singleClickEvent = event;
timer.addEventListener(TimerEvent.TIMER_COMPLETE, timerComplete);
timer.start();
}
}
private function timerComplete( event:TimerEvent ):void
{
dispatchEvent(singleClickEvent.clone());
singleClickEvent = null;
}
基本上......当您单击一次启动计时器时,如果该计时器触发然后调度一个正常的 CLICK 事件。如果用户在计时器触发之前再次单击,则为双击并发送 DOUBLE_CLICK。
于 2012-09-19T14:36:00.077 回答