Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.06.2011, 23:30
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 1  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
По умолчанию Сделать обьект всегда на верхнем уровне глубины

Здравствуйте. Есть курсор - бегающий за мышкой. Во время выполнения приложения на сцену добавляются и удаляются разные обьекты. Нужно чтоб курсор все время был над ними. Решил так - создал синглтон с методом который позволяет изменять глубину курсора. При добавлении каждого графического элемента прописываю Globals.setCursor(); Все бы хорошо, только вот не нравится что-то. В разных уголках кода этот метод вызывается около 40 раз в разных классах. Скажите, пожалуйста, есть ли какой нибудь более удобный способ сделать чтоб один экранный обьект был всегда на верхнем уровне?
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 25.06.2011, 23:46
derhab вне форума Посмотреть профиль Отправить личное сообщение для derhab Найти все сообщения от derhab
  № 2  
Ответить с цитированием
derhab
 
Аватар для derhab

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
например на контейнер в котором находится курсор повесить слушателя события Event.ADDED и внутри обработчика написать что-то типа addChild(cursor)
таким образом он будет всегда наверху
ну или вообще грузить все объекты в какой-то отдельный контейнер, а для курсора зарезервировать свой, который всегда будет наверху
__________________
freelance | Раздор

Старый 25.06.2011, 23:48
spooner вне форума Посмотреть профиль Отправить личное сообщение для spooner Найти все сообщения от spooner
  № 3  
Ответить с цитированием
spooner
 
Аватар для spooner

Регистрация: Mar 2009
Сообщений: 207
Создать контейнер под курсором и в нем уже "добавляются и удаляются разные обьекты".

Старый 26.06.2011, 00:00
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 4  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Спасибо большое всем. Подумав - решил на вооружение взять Event.ADDED - более просто. Знал об этом событии, но думал у него другое предназначение.
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 26.06.2011, 00:03
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 5  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Наиболее правильный вариант все же у spooner. Сделайте лучше все по уму.
__________________
тут я

Старый 26.06.2011, 00:10
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 6  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Стоп, прочел об ADDED. Такая ситуация: на родитель А вешаю слушатель Event.ADDED. Добавляю ребенка Б. Событие срабатывает. Если в этом Б позднее добавить ребенка В, то в А Event.ADDED не сработает? Так ведь?
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 26.06.2011, 00:24
derhab вне форума Посмотреть профиль Отправить личное сообщение для derhab Найти все сообщения от derhab
  № 7  
Ответить с цитированием
derhab
 
Аватар для derhab

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
да сделайте для всех загружаемых объектов отдельный контейнер, а для курсора - отдельный
я ниже об этом же и написал, это более правильный вариант
__________________
freelance | Раздор

Старый 26.06.2011, 00:27
S-ed вне форума Посмотреть профиль Отправить личное сообщение для S-ed Найти все сообщения от S-ed
  № 8  
Ответить с цитированием
S-ed
 
Аватар для S-ed

Регистрация: Jul 2001
Адрес: SPb.RU
Сообщений: 148
Отправить сообщение для S-ed с помощью ICQ
HardCoder
Сработает.
Только, вот, в Вашем случае, в этом нет необходимости.
__________________
RTFM

Старый 26.06.2011, 00:32
HardCoder вне форума Посмотреть профиль Отправить личное сообщение для HardCoder Найти все сообщения от HardCoder
  № 9  
Ответить с цитированием
HardCoder
 
Аватар для HardCoder

блогер
Регистрация: Apr 2011
Сообщений: 583
Записей в блоге: 2
Так и сделал. Надо прислушиваться к опытным людям
__________________
Я мало чего умею, но зато хорошо умею учиться...

Старый 26.06.2011, 01:24
stweet вне форума Посмотреть профиль Отправить личное сообщение для stweet Найти все сообщения от stweet
  № 10  
Ответить с цитированием
stweet
 
Аватар для stweet

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
Вообще в таких случаях делают 2 контейнера, в одном приложение в другом курсор, приложение всегда addChildAt(object, 0); а курсор addChildAt(object, 1); На крайняк на стейдж вешаем лиснера MOUSE_MOVE а в приёмнике addChildAt(cursor, numChildren);
__________________
Спросишь, дурак на минуту. Если не спросишь, дурак на всю жизнь!

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:21.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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