|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Как отследить событие щелчка НЕ ПО MovieClip?
Есть объект подменю. Как сделать так, что если произошел щелчок вне его поля, то присвоить его visible значение false? Какое событие Mouse взять?
__________________
Надо сменить подпись... |
|
|||||
Модрон-ветеринар
|
Как обычно, с помощью проверки hitTest на событие нажатия мыши:
__________________
Идите первым! |
|
|||||
Модрон-ветеринар
|
Всегда пишите весь код в кадрах главном таймлайне, и не будет таких вопросов.
(Разумеется, и в мувиках можно, то есть в кадрах мувиков. Но не НА мувиках!) Нужно на каждый клик сделать обход по всем. Примерно так: this.onMouseDown = function() { for (var i = 1; i <= 10; i++) { var sbm:MovieClip = mainMenu['subMenu' + i]; if (!sbm.hitTest(_root._xmouse, _root._ymouse)) { sbm._visible = false ; } } }; Есть вариант без обхода для проверки - это если у вас в меню кроме этих подменю ничего нет. Тогда можно проверять наличие хиттеста прямо на самом меню, и если его нет, то опять-таки всё же упрощенным циклом выключать все. Удобнее всего так: this.onMouseDown = function() { if (!mainMenu.hitTest(_root._xmouse, _root._ymouse)) { for (var i in mainMenu) { var sbm:MovieClip = mainMenu[i]; sbm._visible = false ; //так скроем любые объекты внутри mainMenu } } }; То есть логика последнего примера - "скрываем сразу всё, если не кликнули хотя бы по одному".
__________________
Идите первым! Последний раз редактировалось mooncar; 08.05.2011 в 11:21. |
|
|||||
Модрон-ветеринар
|
Цитата:
__________________
Идите первым! |
|
|||||
Может быть, Вы меня неправильно поняли.. Меню я сделал сам, оно не из библеотеки флэш... Это совокупность кнопок и расположенных под ними мувиков-подменю с еще кнопками.. Мне нужно управлять именно этими мувиками.. Это я говорю к тому, что заметил в Вашем коде слово MainMenu, которое я не знаю к чему относится
P.S. Трэйс отобразил undefined
__________________
Надо сменить подпись... |
|
|||||
Модрон-ветеринар
|
Я написал не MainMenu, а mainMenu, подразумевая под этим мувиком некий контейнер для всех мувиков-подменю - так обычно решается структура меню.
Если у вас мувики подменю просто лежат сами по себе на _root, замените mainMenu на _root.
__________________
Идите первым! |
|
|||||
Модрон-ветеринар
|
Нет, не может.
__________________
Идите первым! |
Часовой пояс GMT +4, время: 04:02. |
|
« Предыдущая тема | Следующая тема » |
|
|