【问题标题】:setting function of time delay on MOUSE_OVERMOUSE_OVER 延时设置功能
【发布时间】:2012-06-02 08:01:59
【问题描述】:

我想使用 xbox kinect 来运行带有运动传感器的 flash 应用程序,我有一个简单的软件来执行移动鼠标和单击的功能.不幸的是不能只用一只手完成,右手移动鼠标并单击左手命令。我希望它可以只用一只手完成。我的想法是用鼠标悬停功能代替鼠标点击功能,前提是延迟延长,可以做到吗?请帮我如何将其设置为AS3,关键字是鼠标悬停在按钮上时的延迟时间(例如三秒),以便应用程序可以正常运行闪存。或对我有什么建议或任何其他方式?

【问题讨论】:

    标签: actionscript-3 flash-cs5 mouseover kinect motion-detection


    【解决方案1】:

    这样做很容易,如果您有超过 1 个按钮,可能需要调整它,但如果是这样,调整起来很容易。

    var timer:Timer = new Timer(3000);
    timer.addEventListener(TimerEvent.TIMER, onTimerTickHandler);
    
    button.addEventListener(MouseEvent.ROLL_OVER, _onRollOverHandler);
    button.addEventListener(MouseEvent.ROLL_OUT, _onRollOutHandler);
    
    private function _onRollOverHandler(e:MouseEvent):void
    {
       timer.start();
    }
    
    private function _onRollOutHandler(e:MouseEvent):void
    {
        timer.reset();
    }
    
    private function _onTimerTickHandler(e:TimerEvent):void
    {
        timer.reset();
    
        // do something
    }
    

    希望对您有所帮助。

    编辑:我使用MouseEvent.ROLL_OVER/MouseEvent.ROLL_OUT 的原因是因为这样你会遇到更少的问题,如果你想知道确切的区别,请查看文档。祝你的项目好运。

    【讨论】:

    • 进展如何?讨厌看到这么长时间后没有公认的答案的问题哈哈:P
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多