![]() |
Управление уровнями объектов на одном слое
Друзья, приветствую.
Чувствую, что застопорился на элементарщине, но поиски ни к чему не приводят. Работаю с Flash 8. Имеем одну сцену, в ней один слой, на слое две простецкие кнопки. При наведении курсора на любую из кнопок она увеличивается и зрительно перекрывает собой другую (никакого кода, все нарисовано фо фреймах Over и Down кнопки). Проблема в том, что какая-то из кнопок (в моем примере - вторая, но не принципиально) в любом случае находится "выше" другой в слое (настраивается Arrange -> Bring to front) и потому полного перекрытия второй кнопки при наведении курсора на первую не происходит. Пробовал использовать SwapDepths. У меня не получилось задействовать его именно для кнопок. Для этого надо каждую кнопку "сажать" в свой мувик. Учитывая, что у меня планируется штук 60 кнопок на одном слое, и вообще этот пример лишь часть одного огромного флешмувика, такое решение крайне не гуманное. Как решить задачку, чтобы каждая из кнопок перекрывала собой другие в текущем слое при наведении на нее курсора? (т.е. становилась "выше" по оси z всех остальных элементов в данном слое). Пример неудачной работы красной кнопки по ссылке здесь. Спасибо! |
Использовать swapDepths(), говорить тут больше не о чем.
Сажать-не сажать в отдельные мувики - ваше дело. Обычно в проектах чуть сложнее баннера используются в основном только кнопки - символы MovieClip. У класса MovieClip и есть этот метод - swapDepths(). Все так работают и весьма комфортно. А в скомпилированном ролике слоев вообще нет. "Слои", "Arrange -> Bring to front" - это все есть только в программе Adobe Flash для удобства разработчика. При компиляции компилятор просто располагает по z-оси нарисованные автором объекты сообразно их положению в среде визульной разработки (рисованным объектам назначаются отрицательные глубины, кстати - чтобы нечаянно не возник конфликт с программно организованными, у которых положительные глубины). |
Спасибо. Я уже читал Ваши ответы на подобные данному вопросы. Жаль, что кнопки обделены чем-то вроде swapDepths. :(
Ок, буду делать через MovieClip. Да, и спасибо за описание таба в моем предыдущем вопросе. Действительно об этом стоило подумать ибо получалась белеберда. :) |
Сделайте MovieClip с четырьмя кадрами. Создайте в нем слой и напишите каждому кадру _up, _over, _down и _hit соответственно. Далее нарисуйте в этих кадрах что-то, после присоединения обработчика нажатия, этот клип будет вести себя точно так же, как обычная кнопка.
|
Так и делаю в итоге. Спасибо. :)
|
| Часовой пояс GMT +4, время: 13:36. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.