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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 05.01.2011, 16:17
flax4Noob вне форума Посмотреть профиль Отправить личное сообщение для flax4Noob Найти все сообщения от flax4Noob
  № 1  
Ответить с цитированием
flax4Noob
[+1 15.01.11]

Регистрация: Jan 2011
Сообщений: 70
По умолчанию Подсвечивание спрайта-клетки при наведении.

массив спрайтов (клеточки) расположен в родительском спрайте сверху вниз слева направо методами addChild()
каждой клетке привязан обработчик проведения над ним мышки. Это просто и работает. При наведении, я клетке добавляю GlowFilter и она "Светится". Но вот беда...
Светятся только "верхняя" и "левая" грани. Почему такая чтука я предполагаю - из-за порядка в котором они прикрепляются к родителю. Разумеется, если сделать клетки с "пробелами", то они светятся как надо. Как бы мне "поднять" клетку выше, а потом "опустить" на место...

немного кода, а то один текст как-то не айс.
так работает
Код AS3:
	this.graphics.clear();
	this.graphics.beginFill(0xAAAA00,1);
	this.graphics.lineStyle(1, 0x111111);
	this.graphics.drawRect(5, 5, cellSize-5, cellSize-5);
а так нет
Код AS3:
	this.graphics.clear();
	this.graphics.beginFill(0xAAAA00,1);
	this.graphics.lineStyle(1, 0x111111);
	this.graphics.drawRect(0, 0, cellSize, cellSize);

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

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
Поищите по setChildIndex - в контейнере можно поднять как на верхний уровень, зная кол-во элементов (в т.ч. numChildren), так и на нижний (с параметром глубины 0). Все это в офдоках отлично описано
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 05.01.2011, 16:34
flax4Noob вне форума Посмотреть профиль Отправить личное сообщение для flax4Noob Найти все сообщения от flax4Noob
  № 3  
Ответить с цитированием
flax4Noob
[+1 15.01.11]

Регистрация: Jan 2011
Сообщений: 70
Спасибо. Если кто будет искать, то вот что получилось.

Код AS3:
		private function mouseOver(event:MouseEvent){
			var cell:TCell = TCell(event.target);
			var cmf:GlowFilter = new GlowFilter(0x00ffff,1)
			cell.parent.setChildIndex(cell,cell.parent.numChildren-1);
			this._filters[1] = cmf;
			cell.filters=this._filters;
		}
 
 
		private function mouseOut(event:MouseEvent){
			var cell:TCell = TCell(event.target);
			this._filters[1] = _emptyFilter;
			cell.parent.setChildIndex(cell,0);
			cell.filters=this._filters;
		}

Старый 05.01.2011, 16:37
BezDelnik вне форума Посмотреть профиль Отправить личное сообщение для BezDelnik Найти все сообщения от BezDelnik
  № 4  
Ответить с цитированием
BezDelnik

Регистрация: Jul 2008
Сообщений: 80
Отправить сообщение для BezDelnik с помощью ICQ
если мне не изменяет память, можно просто сделать
Код AS3:
cell.parent.addChild(cell)

Старый 05.01.2011, 16:40
TanaTiX вне форума Посмотреть профиль Отправить личное сообщение для TanaTiX Найти все сообщения от TanaTiX
  № 5  
Ответить с цитированием
TanaTiX
 
Аватар для TanaTiX

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
BezDelnik, зачем создавать лишние объекты, да еще и таким способом?
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 05.01.2011, 17:35
BezDelnik вне форума Посмотреть профиль Отправить личное сообщение для BezDelnik Найти все сообщения от BezDelnik
  № 6  
Ответить с цитированием
BezDelnik

Регистрация: Jul 2008
Сообщений: 80
Отправить сообщение для BezDelnik с помощью ICQ
а он не создаст новый объект, он просто поднимет его на верхний уровень

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

блогер
Регистрация: Feb 2008
Сообщений: 1,453
Записей в блоге: 4
в любом случае - это костыль
addChild добавляет объект в DisplayObjectContainer, а не задает высоту, для чего есть другие методы
__________________
Ну все, теперь Забава м-о-я.
Гы-гы, а корабль мой!

Старый 05.01.2011, 18:57
BezDelnik вне форума Посмотреть профиль Отправить личное сообщение для BezDelnik Найти все сообщения от BezDelnik
  № 8  
Ответить с цитированием
BezDelnik

Регистрация: Jul 2008
Сообщений: 80
Отправить сообщение для BezDelnik с помощью ICQ
не вижу в этом ничего плохого.. на самом деле не принципиально, я написал этот вариант просто для общего развития.. например у меня на собеседовании спросили несколько способов "вытащить мувик на верхний уровень"

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

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
TanaTiX, в данном случае можно и этот метод, правда по тестам он будет чууууточку проигрывать в скорости в отношении setChildIndex
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

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

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

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


 


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


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