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

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

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

Регистрация: Sep 2007
Сообщений: 124
По умолчанию Скроллинг колёсиком мыши

Привет!
Подскажите что нужно дописать для прокрутки колёсиком

Код:
Stage.scaleMode = "noScale";
_root._quality = "BEST";
//
//Сегодня мы разберём один из видов скроллинга во Flash. Это будет скроллинг не
//для текстовых полей (TextField), а для Movie Clip'ов, внутри которых может быть
//любое содержимое.
//Принцип таков:
//1) На объект, который нужно будет прокручивать накладывается маска.
//2) Объект, который мы "скроллируем" (прокручиваем) сдвигается по оси Y, если
//это вертикальный скроллинг, или по оси X, если это горизонтальный скроллинг.
//Таким образом, при движении, будет определённая часть обхекта будет открываться,
//а определённая скрываться. Та, что будет находится "под" маской, будет видна,
//та что будет выходить за пределы маски, будет скрыта.
//
//Накладываем маску на объект.
obj_mc.setMask(mask_mc);
//Находим разницу между общей высотой обхекта и высотой "видимой части", видимая
//часть у нас будет составлять площадь маски, и, соответственно, высота видимой
//части - это будет высота маски.
var varDif:Number = obj_mc._height-mask_mc._height;
//Создаём событие на нажатие кнопки скроллинга
scroll_mc.onPress = function() {
	//Переходим во второй кадр скроллинга, чтобы сделать нажатие наглядней
	this.gotoAndStop(2);
	//Начинаем перетаскивание кнопки скроллинга
	//startDrag(lockCenter,left,top,right,bottom);
	//lockCenter - может принимать значения true или false, если lockCenter равен
	//true, то центр перетаскиваемого объекта всегда совпадать с курсором мышки.
	//Если false, то происходит обычное перетаскиавание, куда мышкой клацнули,
	//за то место и потянули.
	//left - координата левой границы, за которую объект выходить не будет;
	//top - координата верхней границы;
	//right - координата правой границы;
	//bottom - координата нижней границы.
	//Если вы хотите, что объект можно было перетаскивать безо всяких ограничений,
	//то можете просто не заполнять эти параметры. Если вам нужно, чтобы по
	//вертикали объект нельзя было передвигать, то значения top и bottom должны
	//быть одинаковыми. Если хотите, чтобы обхект нельзя было перетаскивать по
	//горизонтали, то left и right должны быть равны друг другу.
	//Кстати все эти параметры являются не обязательными, то есть, вы можете
	//просто записать startDrag() и перетаскивание объекта всёравно включится,
	//и никаких ограничений к этому перетаскиванию применено не будет.
	this.startDrag(false, this._x, 0, this._x, 150);
	//Создаём событие на ДВИЖЕНИЕ МЫШКИ.
	this.onMouseMove = function() {
		//Пропорционально тому, на сколько скроллинг сместился ниже начала оси Y
		//объект, который мы прокручиваем, должен смещаться вверх.
		_root.obj_mc._y = -_root.varDif*(this._y/150);
	};
};
//После того, как пользователь отпустил кнопку мышки, мы должны остановить
//прокручивание.
scroll_mc.onRelease = scroll_mc.onReleaseOutside=function () {
	//Переходим на первый кадр скроллинга.
	this.gotoAndStop(1);
	//Останавливаем перетаскивание скроллинга
	this.stopDrag();
	//Удаляем событие на ДВИЖЕНИЕ МЫШКИ, с помощью которого и происходило
	//прокручивание объекта.
	delete this.onMouseMove;
};

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

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

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


 


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


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