Как вручную вызвать событие click в actionscript / flex3? - PullRequest
0 голосов
/ 17 ноября 2010

аналогично приведенному ниже в javascript:

<input id="target" type="button" onclick="..." />

<script>
document.getElementById('target').click();
</script>

Ответы [ 3 ]

1 голос
/ 17 ноября 2010

Вы можете использовать функцию dispatchEvent: http://livedocs.adobe.com/flex/3/html/help.html?content=events_07.html

Вы должны создать новый экземпляр события события click до запуска

0 голосов
/ 18 ноября 2010

в чем смысл этого? в этом случае я бы порекомендовал использовать пользовательское событие, чтобы вы не путали себя с MouseEvent.CLICK, не представляющим щелчок вообще.

если, как предлагает ivo, вы хотите запустить событие, когда пользователь впервые переворачивает ваш клип, это должно помочь вам начать:

myClip.addEventListener( MouseEvent.ROLL_OVER, handleFirstMouseOver );

function handleFirstMouseOver( e:MouseEvent ) : void
{
    dispatchEvent( new Event('mySpecialEvent', true ) );
    myClip.removeEventListener( MouseEvent.ROLL_OVER, handleMouseOver );
}

Если (а я не предполагаю, что вы :)), вы пытаетесь подделать щелчок, чтобы обойти всплывающие окна или войти в режим FullScreen, или что-то в этом роде, подумайте еще раз, потому что игрок распознает такие события, как на самом деле порождается из пользовательского ввода.

0 голосов
/ 18 ноября 2010
package 
{
    import flash.display.DisplayObject;
    import flash.events.MouseEvent;

    public class ClickEventExample
    {
        public static function dispatchClickEventFrom(something:DisplayObject):void
        {
            something.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
        }
    }
}
...