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

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

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

Регистрация: Feb 2008
Адрес: Череповец
Сообщений: 623
Отправить сообщение для Felicast с помощью ICQ
По умолчанию скроллинг. как реализовать?

нужно организовать класс скролла. (при движении одного мувика (scroller), второй(mainHold) двигался в другом направлении)
не знаю на какой Event повесить изменение координат скроллируемого(mainHolder) мувика. пока вешаю на MOUSE_MOVE, но когда мышь находится не над скроллом(scroller), это событие не срабатывает
вот код:
Код:
public class Scrolling extends MovieClip
{
	private var mainHold:MainHold;
	private var mDown:Boolean;
	public function Scrolling()
	{
		mDown = false;
		mainHold = (parent.getChildByName("mainHold") as MainHold);
		scroller.addEventListener(MouseEvent.MOUSE_DOWN, scrollerMouseDownHandler);
		scroller.addEventListener(MouseEvent.MOUSE_UP, scrollerMouseUpHandler);
		scroller.addEventListener(MouseEvent.MOUSE_MOVE, scrollerMouseMoveHandler);
	}
	private function scrollerMouseDownHandler(event:MouseEvent):void
	{
		mDown = true;
		scroller.startDrag(false, new Rectangle(scroller.x, 0, 0, 550 - scroller.height));
	}
	private function scrollerMouseMoveHandler(event:MouseEvent):void
	{
		if (mDown)
		{
			mainHold.y = -(scroller.y * mainHold.height) / this.height;
		}
	}
	public function scrollerMouseUpHandler(event:MouseEvent):void
	{
		mDown = false;
		scroller.stopDrag();
	}
}
если есть более разумная идея, с удовольствием выслушаю
__________________
я могу стать всем, если только захочу

Старый 06.07.2008, 20:19
__ant вне форума Посмотреть профиль Отправить личное сообщение для __ant Найти все сообщения от __ant
  № 2  
Ответить с цитированием
__ant

Регистрация: Aug 2007
Адрес: Москва
Сообщений: 56
Изменяй координаты mainHold по событию enterFrame

Код:
scroller.startDrag(false, new Rectangle(scroller.x, 0, 0, 550 - scroller.height));
scroller.addEventListener(Event.ENTER_FRAME, frameHandler);

...

scroller.stopDrag();
scroller.removeEventListener(Event.ENTER_FRAME, frameHandler);

...

private function frameHandler(e:Event):void {
     mainHold.y = -(scroller.y * mainHold.height) / this.height;

}

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

Регистрация: Feb 2008
Адрес: Череповец
Сообщений: 623
Отправить сообщение для Felicast с помощью ICQ
спасибо. я, собственно, так и сделал
__________________
я могу стать всем, если только захочу

Старый 12.03.2010, 19:49
inozemcev вне форума Посмотреть профиль Отправить личное сообщение для inozemcev Найти все сообщения от inozemcev
  № 4  
Ответить с цитированием
inozemcev
[+ 1.0 08.10.14]
 
Аватар для inozemcev

блогер
Регистрация: Mar 2010
Адрес: x = stage.stageWidth/2 y= stage.stageHeight/2
Сообщений: 293
Записей в блоге: 2
по - моему не учитываются случаи когда мышь покидает зону захвата, возвращается в нее и т п.

Старый 12.03.2010, 20:45
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 5  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Посмотрите на горизонтальный слайдер (делал давно) и можно вертикальный поставить и скинить можно мувиком.
http://murmadillo.tut.su/m/sv-gor-sl.zip
__________________
Гоночка

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

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

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


 


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


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