Вопрос

При использовании двойного щелчка включить на любом компоненте иногда у меня возникают проблемы с активацией двойного щелчка.

Я понял, что если я переключусь с одного быстрого клика на другой, это НИКОГДА не вызовет событие двойного клика.Если, однако, я не перемещаю мышь между щелчками, то выполняется двойной щелчок.

Я подумываю об использовании timer, чтобы получить свой собственный двойной щелчок.

Как бы вы решили эту проблему?

Образец

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="init()">
    <mx:Canvas id="bg" width="100%" height="100%" backgroundColor="white" />

     <mx:Script>
        <![CDATA[

            private function init():void {

            var cvstest:Canvas = new Canvas();
            cvstest.width = 200;
            cvstest.height = 200;
            cvstest.x = 100;
            cvstest.doubleClickEnabled = true;
            cvstest.addEventListener(MouseEvent.DOUBLE_CLICK, dc);
            cvstest.addEventListener(MouseEvent.MOUSE_DOWN, md);
            cvstest.setStyle("backgroundColor",0xff0000);
            this.addChild(cvstest);   



            }

         public function dc (e:MouseEvent) : void {
            trace("DOUBLE CLICK ON TEST CANVAS");
        } 
         public function md (e:MouseEvent) : void {
            trace("SINCLICK ON TEST CANVAS");
        } 

        ]]>    
    </mx:Script>
</mx:Application>
Это было полезно?

Решение

На моем трекпаде ваш код работает отлично, но я думаю, это потому, что ужасно сложно перемещать мышь между щелчками.

Если я использую свой wacom, кажется, что мой двойной щелчок успешен только примерно в 1/3 случаев.

Есть также это:http://bugs.adobe.com/jira/browse/FP-15 :(

Другие советы

Я могу решить это, очистив classInterval и вызываю отложенную проверку.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top