Я создал простую панель со строкой заголовка и пытаюсь поделиться строкой заголовка между MouseEvent.MOUSE_DOWN, MouseEvent.MOUSE_CLICK и MouseEvent.DOUBLE_CLICK. При нажатии на кнопку мыши панель перетаскивается, при щелчке мыши панель разворачивается и разворачивается, а при двойном щелчке мыши панель скрывается.
Я изо всех сил пытаюсь заставить все это работать с тем же спрайтом строки заголовка панели. нажатие мыши активирует щелчок, когда мышь поднята и т. д. Можно ли различить эти события мыши на одном и том же объекте?
я забыл упомянуть, что я программирую приложение AIR, поэтому, хотя я считаю, что приведенное ниже решение PatrickS будет работать для обычного .swf-файла или файла, имеющего пользовательские функции перетаскивания, у меня нет доступа Функция startMove () в nativeWindow. Тем не менее, мне удалось разделить объект titleBar панели между событиями MOUSE_DOWN и MOUSE_CLICK путем опроса позиции nativeWindow.
private function titleBarMouseDownEventHandler(evt:MouseEvent):void
{
windowCoords = new Point(stage.nativeWindow.x, stage.nativeWindow.y);
stage.nativeWindow.startMove();
}
private function titleBarClickEventHandler(evt:MouseEvent):void
{
if (stage.nativeWindow.x != windowCoords.x && stage.nativeWindow.y != windowCoords.y)
return;
//expand & collapse code
}