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

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

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

Регистрация: Jun 1999
Адрес: москва
Сообщений: 27
По умолчанию управление роликами

доброго времени суток
вопрос вот в чем:

есть некое поле в котором расположены три поля (рамки с картинками) и управляющая кнопка ... нужно чтобы при щелчке на кнопке картинки "погасли" (прозрачность 100) одна за другой с равным интервалом, потом произошла смена картинок в каждом поле (в "погашенном" состоянии) и затем рамки также постепенно "включились" бы (прозрачность=0) но уже с новыми картинками внутри ...

спасибо

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

Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
Для того что бы сделать, нужно подумать. Имеем массив с именами картинок, пишем функцию загрузки картинок в требуемые клипы, сразу клипам присваеваем _alpha=0. Проверяем загрузку, если все загрузилось, запускаем еще одну функцию появления. Нажимаем кнопку берем имена картинок к примеру из другого массива и создаем в мувиках еще по одному мувику и повторяем предыдущие действия. Ничего сложного да и вариантов выполнения множество

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

Регистрация: Jun 1999
Адрес: москва
Сообщений: 27
По умолчанию управление роликами -2

спасибо Futs

может есть какой-либо "сэмпл" из которого изложенное может понять ИДИОТ ? кое-как разобрался с 4-ой версией "флэш" а потом "перепрыгнул" на OS X и оказался нос к носу с этим МХ ... можно как-то на примерах показать эти операции ?

спасибо

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

Регистрация: Jun 1999
Адрес: москва
Сообщений: 27
спасибо Futs

может есть какой-либо "сэмпл" из которого изложенное может понять ИДИОТ ? кое-как разобрался с 4-ой версией "флэш" а потом "перепрыгнул" на OS X и оказался нос к носу с этим МХ ... можно как-то на примерах показать эти операции ?

спасибо

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

Регистрация: Oct 2003
Адрес: Москва
Сообщений: 2,736
Отправить сообщение для Король с помощью ICQ
1)добавляешь все картинки в массив:
Код:
mArr = [];
for (var i = 1; i<кол-во картинок; i++) {
	mc = след картинка 
	mArr.push(mc);
}
2)создаем функцию, которая будет делать какие-то действия по очереди:

Код:
MovieClip.prototype.startConveyer = function(arr, func, offcet, speed, onComplete) {
	
	this.t = offcet;
	this.func = func;
	this.arr = arr;
	this.speed = speed;
	this.onComplete = onComplete;
	this.onEnterFrame = function() {
		this.arr[this.t].onComplete = this.func;
		this.arr[this.t].onComplete();
		if (this.t>this.arr.length) {
			delete this.onEnterFrame;
			this.onComplete();
			
		}
		this.t += this.speed;
	};
};
3) создаем функции появления-погасания

Код:
MovieClip.prototype.appear = function(){
this.alpTo(100,3)
}
MovieClip.prototype.disAppear = function(){
this.alpTo(0,3)
}
4) да, не забываем про сами прототипы транзишнов:

Код:
MovieClip.prototype.alpTo = function(alp, speed, onComplete) {
	this.alp = alp;
	this.speed = speed;
	this.onComplete = onComplete;
	this.onEnterFrame = function() {
		this._alpha += (this.alp-this._alpha)/this.speed;
		if (Math.abs(this._alpha-this.alp)<2) {
			delete this.onEnterFrame;
			this._alpha = this.alp;
			this.onComplete();
		}
	};
};
5) пишем более-менее универсальный код загрузчика:

Код:
MovieClip.prototype.loadImage = function(src, onComplete) {
		this.createEmptyMovieClip("image_holder", 100);
		
		
		this.mclListener = new Object();
		this.mclListener.onLoadComplete = function(trg) {
			
			
			trg.onComplete();
		};
                this.mclListener.onLoadStart = function(trg) {
		trg.onComplete = onComplete;
	        };
		this.mclListener.onLoadStart = function(trg) {
		};
		this.image_mcl = new MovieClipLoader();
		this.image_mcl.addListener(this.mclListener);
		this.image_mcl.loadClip(src, this.image_holder);
	};

теперь пишем код который грузит новые картинки:
Код:
loadNewImages = function(){
for(var i in mArr){
mArr[i].loadImage(линк на картинку, событие по окончанию)

}
функцию которая следит за тем - загрузились ли все картинки - напиши сам
мне ее писать сейчас лень но допустим она вызывает onAllImagesLoaded()
Дальше - картинки исчезают:

Код:
controller = _root.createEmptyMovieClip("controller", 100)
controller.startConveyer(mArr , disAppear, 0, 1, loadNewImages);
loadNewImages вызывается, загружает, потом вызывается onAllImagesLoaded()


Код:
onAllImagesLoaded = function(){
mArr.reverse() //если ты хочешь чтоб они появлялись в обратном порядке
controller.startConveyer(mArr , аppear, 0, 1);
}


Последний раз редактировалось Король; 10.02.2006 в 00:18.
Старый 10.02.2006, 00:14
Король вне форума Посмотреть профиль Отправить личное сообщение для Король Найти все сообщения от Король
  № 6  
Ответить с цитированием
Король
 
Аватар для Король

Регистрация: Oct 2003
Адрес: Москва
Сообщений: 2,736
Отправить сообщение для Король с помощью ICQ
много кода слишком. можно проще - но у меня уже готовые функции были


Последний раз редактировалось Король; 10.02.2006 в 00:17.
Старый 10.02.2006, 11:36
Futs вне форума Посмотреть профиль Отправить личное сообщение для Futs Найти все сообщения от Futs
  № 7  
Ответить с цитированием
Futs
 
Аватар для Futs

Регистрация: Jun 2004
Адрес: Москва
Сообщений: 475
2 Король, грамотно - особенно понравился конвеер, надо будет взять идею на вооружение, помню парился с подобной задачей, но боюсь Владу трудно будет с этим разобраться, а писать попроще времени нет.
2 Влад, думаю тебе лучше поискать исходник какой-нибудь галереи их не так мало

Старый 10.02.2006, 12:01
Antares вне форума Посмотреть профиль Найти все сообщения от Antares
  № 8  
Ответить с цитированием
Antares
Banned
[+1 16.05.2006]
[++1 16.05.2006]
[+ 1 21.05.06]
[++ за хамство]
[+1 21.05.2006]
 
Аватар для Antares

Регистрация: Dec 2003
Сообщений: 3,925
Хехе Конвеер Интересно, читает ли нас Джон

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

Регистрация: Oct 2003
Адрес: Москва
Сообщений: 2,736
Отправить сообщение для Король с помощью ICQ
ну у Джона то другой конвеер) хотя название, конечно, не супероригинальное

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

Регистрация: Jun 1999
Адрес: москва
Сообщений: 27
Спасибо за ответ, Король

что называется "а дураки все не унимались ..." ... мнеэто было бы проще разобрать полазив по каком-нибудь "сэмплу" ... можно ли сделать что-то похожее:в поле пара рамок с картинками внутри и управляющая кнопка ... при нажатии на кнопку картинки внутри рамок "гаснут" одна за другой, в погашеном состоянии внутри рамок происходит смена слайдов и во включившихся (так жеодно за другим) видны новые картинки ...

работа естсественно чего-то СТОИТ ... озвучте!

удачного дня

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

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

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


 


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


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