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

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

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

Регистрация: Jul 2014
Сообщений: 2
По умолчанию Интерактивный план квартир

Здравствуйте!

У меня установлен Flash Professional CC, я в нем нуб, но хочу заполнить пробел в знаниях (с программированием работаю всю жизнь).

Задание такое. Для сайта строительной компании нужно сделать план этажа (существует в виде jpg-картинки от архитектора), в котором:

а) при наведении курсора на квартиру ее область должна подсвечиваться каким-то цветом;
б) при клике на эту подсвеченную область должен показываться увеличенный план выбранной квартиры (тоже jpg-картинка).

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


Последний раз редактировалось Zebestov; 24.07.2014 в 20:32.
Старый 24.07.2014, 23:38
Ёлочка вне форума Посмотреть профиль Отправить личное сообщение для Ёлочка Найти все сообщения от Ёлочка
  № 2  
Ответить с цитированием
Ёлочка
 
Аватар для Ёлочка

Регистрация: Jun 2013
Адрес: Воронеж
Сообщений: 101
1. Кидаешь план этажа на сцену.
2. В нужных местах рисуешь цветные области. Конвертируешь эти области в MovieClip-ы и задаешь им имена.
3. Каждый увеличенный план тоже заворачиваешь в MovieClip, кидаешь поверх плана этажа на сцену и так же задаешь имя.
4. Пишешь вот такой код:

Код AS3:
import flash.display.MovieClip;
import flash.events.MouseEvent;
 
var rooms:Vector.<MovieClip> = new <MovieClip>[ room_1, room_2, room_3, room_4 ];
var big_plans:Vector.<MovieClip> = new <MovieClip>[ big_plan_1, big_plan_2, big_plan_3, big_plan_4 ];
 
for each ( var room:MovieClip in rooms )
{
	room.addEventListener( MouseEvent.MOUSE_OVER, mouseOverOut );
	room.addEventListener( MouseEvent.MOUSE_OUT, mouseOverOut );
	room.addEventListener( MouseEvent.CLICK, roomClick );
	room.alpha = 0;
}
 
for each ( var big_plan:MovieClip in big_plans )
{
	big_plan.addEventListener( MouseEvent.CLICK, bigPlanClick );
	big_plan.visible = false;
}
 
function mouseOverOut( e:MouseEvent ):void
{
	var room:MovieClip = e.target as MovieClip;
 
	switch ( e.type )
	{
		case MouseEvent.MOUSE_OVER:
			room.alpha = 1;
			break;
 
		case MouseEvent.MOUSE_OUT:
			room.alpha = 0;
			break;
	}
}
 
function roomClick( e:MouseEvent ):void
{
	var room:MovieClip = e.target as MovieClip;
	var room_index:int = rooms.indexOf( room );
	var big_plan:MovieClip = big_plans[ room_index ];
	big_plan.visible = true;
}
 
function bigPlanClick( e:MouseEvent ):void
{
	var big_plan:MovieClip = e.target as MovieClip;
	big_plan.visible = false;
}
5. Заказчик тебя обнимает и ведет в ресторан. plan.zip

plan.swf   (4.5 Кб)
Вложения
Тип файла: swf plan.swf (4.5 Кб, 111 просмотров)
__________________
В лесу родилась ёлочка, в лесу она росла! Зимой и летом...

Старый 25.07.2014, 13:35
radislav72 вне форума Посмотреть профиль Отправить личное сообщение для radislav72 Найти все сообщения от radislav72
  № 3  
Ответить с цитированием
radislav72

Регистрация: Jul 2014
Сообщений: 2
Спасибо! Это то, что надо. Со всем остальным разобрался

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

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

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


 


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


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