2009-04-23 4 views
0

Я поддерживаю приложение ActionScript 2, которое использует createEmptyMovieClip для создания выпадающих списков (элементы списка прикрепляются как мувиклипы). Я могу закрыть раскрывающийся список непосредственно с помощью removeMovieClip и, очевидно, такой.Закрытие выпадающего меню, нажав снаружи в приложении AS2?

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

Пока что единственное решение, которое я вижу, превращает _root (или невидимый слой) в кнопку, доказывая для него onRelease, но это хакерское поведение, поскольку _root обрабатывается как кнопка Flash (указатель мыши курсора и все такое). Не хочу!

ответ

1

Я как раз собирался порекомендовать вам делать то, что вы не хотите делать, потому что он is хакерский. Настройка слушателя мыши может быть вариант ... (я нарисовал [тс] на самом деле быстро ...)

MouseListener = new Object() 
Mouse.addListener(MouseListener) 
MouseListener.onMouseDown=function(){ 
    trace ("heard:'DOWN'") 
    // do your call to close the button here, perhaps? 
} 

another.onPress=function(){ 
    trace ("pressed!") 
} 

Я не могу думать о лучшем способе просто еще ...

выше код не сильно исправить, но он показывает, что вы можете слушать клик, а также делать что-то относительно того, что вы нажали, и для них быть двумя отдельными действиями.

 Смежные вопросы

  • Нет связанных вопросов^_^