Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flex (http://www.flasher.ru/forum/forumdisplay.php?f=84)
-   -   Отправка cобытия содержимому SwfLoader-a (http://www.flasher.ru/forum/showthread.php?t=109401)

zlatko 13.03.2008 19:42

Отправка cобытия содержимому SwfLoader-a
 
Попытаюсь обьяснить....

Есть swf сделаный в cреде Adobe Flash. В нем сидит обычная кнопка(по ролл оверу зажигается і т.д.). Этот swf я гружу к себе в приложение с помощью SWFLoader. Возможно ли програмно послать этому объекту(флеш кнопочке) событие, например тот же MouseEvent.ROLL_OVER ?

Пробовал напрямую :

Код:

someSWFLoaderObj.dispatchEvent(new MouseEvent(MouseEvent.ROLL_OVER));
А также посредством контента :

Код:

someSWFLoaderObj.content.dispatchEvent(new MouseEvent(MouseEvent.ROLL_OVER));
Не получается, кнопочка зажигаться не хочет :rolleyes: Хотя если мышкою поводить, все ок :umnik2:

Это зависит от особеностей создания swf в среде Adobe Flash, или такое провернуть принцыпиально невозможно ?

FlexOkeks 14.03.2008 17:31

Цитата:

Сообщение от zlatko
Это зависит от особеностей создания swf в среде Adobe Flash, или такое провернуть принцыпиально невозможно ?

Нет среда Adobe Flash тут не причем. Дело в том, что событие MouseEvent.ROLL_OVER должна генерировать сама кнопка, и она эта делает, когда курсор мыша на нее наезжает. Чтобы сгенерировать это событие без курсора нужно достучаться до этой кнопки и вызывать метод:
Код:

someSWFLoaderObj.content.myButton.dispatchEvent(new MouseEvent(MouseEvent.ROLL_OVER));

zlatko 14.03.2008 20:03

Cпасибо !

Правда заработало с маленькой поправкой :) :

Код:

someSWFLoaderObj.content["myButton"].dispatchEvent(new MouseEvent(MouseEvent.ROLL_OVER));


Часовой пояс GMT +4, время: 09:43.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.