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

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

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

Регистрация: Oct 2010
Сообщений: 12
По умолчанию как просматривать кадры мувика слайдером

Всем доброго времени суток. Помогите пожалуйста, у меня есть мувик с некоторым количеством кадров, для него создан слайдер(вручную). существует код
Код AS3:
stop();
function sliderMove(event:Event):void
{
	slider.thumb.x = slider.slider_line.x + slider.slider_line.width / ((event.target.totalFrames-1) / (event.target.currentFrame - 1));
	trace(event.target.currentFrame - 1);
}
blokus.addEventListener(Event.ENTER_FRAME, sliderMove);
//
blokus.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
blokus.stop();
var direction:int = 1;
function enterFrameHandler(e:Event):void
{
	var target:MovieClip = e.currentTarget as MovieClip;
	if((target.currentFrame == 1 && direction == -1)||(target.currentFrame == target.totalFrames && direction == 1))
		direction *= -1;
	target.gotoAndStop(target.currentFrame + direction);
}
Прблема такая: когда ползунок на слайдере достигает конца "слайдера" он там застревает и недвигается нитуда нисюда. Подскажите что не так, или подскажите правильный код или ссылку на какой нибудь пример.

PS: AS3 знаю очень плохо , но немного понимаю, Если непонятно выразил свой вопрос пишите напишу конкретней..

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

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Слайдер должен существовать отдельно, без привязки к чему либо еще. От него надо только 2 вещи:
1) диспатчит flash.events.Event.CHANGE при перетаскивании
2) иметь геттер для свойства position, показывающий текущий сдвиг слайдера.

Поподробнее о слайдере:
Код AS3:
public class Slider extends Sprite {
 
private var _position:Number = 0;
 
... // конструктор класса
 
// обработчик движения мыши
// на MOUSE_MOVE подписываемся после MOUSE_DOWN
// и отписываемся после MOUSE_UP
private function onMouseMove(event:MouseEvent) {
 
// меняем позицию ползунка и свойство _position
polzunok.x = ...
_position = polzunok.x / maxX;
 
// уведомляем тех, кому интересно, что слайдер подвинули
super.dispatchEvent(new Event(Event.CHANGE));
 
}
 
// свойство position только для чтения
public function get position():Number {
return _position;
}
 
}
Далее в коде программы подписываемся на Event.CHANGE от слайдера, в обработчике события смотрим на slider.position и в зависимости от него переходим на нужный кадр
__________________
...вселенская грусть

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

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

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


 


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


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