Question

Lorsque vous utilisez un double clic activer sur un composant, parfois j'ai du mal à activer la double clic.

Je compris que si je passe entre mon rythme rapide simple clic il ne sera jamais déclencher un événement double clic. Si, cependant, je ne bouge pas la souris entre les clics alors le double-clic est tiré.

Je pense à l'aide de la minuterie pour obtenir mon double-clic.

Comment voulez-vous résoudre ce problème?

Exemple

<?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>
Était-ce utile?

La solution

Sur mon trackpad, votre code fonctionne parfaitement bien, mais je suppose que ce parce qu'il est terriblement difficile de déplacer la souris entre les clics.

Si j'utilise mon wacom, il semble que mon double clic ne réussit environ 1/3 du temps.

Il y a aussi ceci: http://bugs.adobe.com/jira/browse/FP-15: (

Autres conseils

Je peux résoudre ce problème en ouvrant la classInterval et appelant une validation différée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top