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

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

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

Регистрация: Jul 2006
Сообщений: 136
Отправить сообщение для khorokhorya с помощью ICQ
По умолчанию Как сделать, чтобы пункты меню перемещались, когда один из пунктов открывается?

пункты меню загружаются из библиотеки и встают друг за другом, когда наводишь на один из пунктов мув внутри него проигрывается и увеличивается вертикально, как настроить, чтобы остальные пункты меню изменяли свою координату по y?

Код:
myPhoto = new XML ();
myPhoto.ignoreWhite = true;
myPhoto.onLoad = function (success) {
	//если xml загрузился, то присваиваем переменной numimages значение количества узлов(фоток галереи)
	numimages = this.firstChild.childNodes.length;
	//ширина иконки + расстояние  между иконками в мувике thumbnails
	spacing = 13;
	// проходим циклом по массиву 
	for (i = 0; i < numimages; i++) {
		// берём  первый узел
		this.picHolder = this.firstChild.childNodes[i];
		//создаём  в мувке thumbnails пустой мувиклип с названием thumbnail1 и глубиной 1
		this.thumbHolder = thumbnails.createEmptyMovieClip ("thumbnail" + i, i);
		this.pred = "thumbnails." + "thumbnail" + (i - 1);
		// его координата по x относительно thumbnails равна числу номера узла умноженному на spacing 
		this.thumbHolder._y = i * spacing;
		//создание ещё одного пустого клипа в пустом клипе
		this.thumbLoader = this.thumbHolder.createEmptyMovieClip ("thumbnail_image", 0);
		//загрузка linkage клипа во внутреннй пустой мувиклип
		this.pic = this.thumbLoader.attachMovie ("btn_menu", "btn_menu_01", i);
		//загрузка картинки во внутреннй пустой мувиклип
		this.pic.pic_menu.loadMovie (this.picHolder.attributes.thmb);
		// сколько работ в разделе		
		_root.rabotki.rabotki.text = "В разделе " + razdel + " " + numimages + " работ.";
		this.thumbHolder.title = this.picHolder.attributes.title;
		this.thumbHolder.main = this.picHolder.attributes.main;
		this.thumbHolder.wi = this.picHolder.attributes.wi;
		this.thumbHolder.hi = this.picHolder.attributes.hi;
		this.thumbHolder.opisanie = this.firstChild.childNodes[i].childNodes[0].nodeValue;
		//реакция на релиз
		this.thumbLoader.onRollOver = function () {
			this.btn_menu_01.gotoAndPlay (2);
		};
		this.thumbLoader.onRollOut = function () {
			this.btn_menu_01.gotoAndPlay (26);
		};
	}
};
myPhoto.load ("xml_photo.xml");


Последний раз редактировалось iNils; 09.03.2008 в 22:28.
Старый 10.03.2008, 00:09
Fann вне форума Посмотреть профиль Отправить личное сообщение для Fann Найти все сообщения от Fann
  № 2  
Ответить с цитированием
Fann
 
Аватар для Fann

Регистрация: Jun 2006
Адрес: crimea
Сообщений: 69
Отправить сообщение для Fann с помощью ICQ
Код:
var _this=this;
this.thumbLoader.onRollOver = function () {
for(var j:Number=0;j<_this.numimages;j++){
  if(j==i){continue;}
var newYCoord =100;//изменить
var menuItem = _this.thumbnails['thumbnail' + i];
menuItem.motion = new mx.transitions.Tween(menuItem, "_y", mx.transitions.easing.Strong.easeOut,menuItem._y, newYCoord, 50, false);
}
}
укажите значение newYCoord , какое надо, скорость движения, можете пользоваться простым онентерфрейм вместа твина.

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

Регистрация: Jul 2006
Сообщений: 136
Отправить сообщение для khorokhorya с помощью ICQ
что то у меня не пашет, может не туда втавилось...
прикрепляю то , что у меня получилось, помоги, пожалуйста.
Вложения
Тип файла: rar itog.rar (41.0 Кб, 67 просмотров)

Старый 10.03.2008, 01:36
Fann вне форума Посмотреть профиль Отправить личное сообщение для Fann Найти все сообщения от Fann
  № 4  
Ответить с цитированием
Fann
 
Аватар для Fann

Регистрация: Jun 2006
Адрес: crimea
Сообщений: 69
Отправить сообщение для Fann с помощью ICQ
Код:
var nItems:Number;
myPhoto.onLoad = function(success) {
	//если xml загрузился, то присваиваем переменной numimages значение количества узлов(фоток галереи)
	numimages = this.firstChild.childNodes.length;
    nItems=numimages
	//ширина иконки + расстояние  между иконками в мувике thumbnails
	spacing = 13;
	// проходим циклом по массиву 
	for (i=0; i<numimages; i++) {
		// берём  первый узел
		this.picHolder = this.firstChild.childNodes[i];
		//создаём  в мувке thumbnails пустой мувиклип с названием thumbnail1 и глубиной 1
		this.thumbHolder = thumbnails.createEmptyMovieClip("thumbnail"+i, i);
		this.pred = "thumbnails."+"thumbnail"+(i-1);
		// его координата по x относительно thumbnails равна числу номера узла умноженному на spacing 
		this.thumbHolder._y = i*spacing;
		//spacing  = this.thumbnails.thumbHolder._height
		//this.thumbHolder._y = i * spacing ;
		//создание ещё одного пустого клипа в пустом клипе
		this.thumbLoader = this.thumbHolder.createEmptyMovieClip("thumbnail_image", 0);
		//загрузка linkage клипа во внутреннй пустой мувиклип
		this.pic = this.thumbLoader.attachMovie("btn_menu", "btn_menu_01", i);
		//загрузка картинки во внутреннй пустой мувиклип
		this.pic.pic_menu.loadMovie(this.picHolder.attributes.thmb);
		// сколько работ в разделе
		_root.rabotki.rabotki.text = "В разделе "+razdel+" "+numimages+" работ.";
		this.thumbHolder.title = this.picHolder.attributes.title;
		this.thumbHolder.main = this.picHolder.attributes.main;
		this.thumbHolder.wi = this.picHolder.attributes.wi;
		this.thumbHolder.hi = this.picHolder.attributes.hi;
		this.thumbHolder.opisanie = this.firstChild.childNodes[i].childNodes[0].nodeValue;
	}
	addHandlers();
};
myPhoto.load("xml_photo.xml");
function addHandlers() {
	var mc;
	for (var num:Number = 0; num<nItems; num++) {
		mc = thumbnails['thumbnail'+num];
		mc.thumbnail_image.num = num;
		mc.thumbnail_image.onRollOver = function() {
			this.btn_menu_01.gotoAndPlay(2);
			_root.moveMenuItems(this.num);
			
		};
		mc.thumbnail_image.onRollOut = function() {
			this.btn_menu_01.gotoAndPlay(26);
		};
	}
}
function moveMenuItems(cnt:Number):Void {
	var newYCoord:Number;
	var menuItem:MovieClip;
	for (var j:Number = 0; j<nItems; j++) {
		if (j == cnt) {
			continue;
		}
		menuItem = thumbnails['thumbnail'+j];
		newYCoord = menuItem._y+10;//изменить
		menuItem.motion = new mx.transitions.Tween(menuItem, "_y", mx.transitions.easing.Strong.easeOut, menuItem._y, newYCoord, 50, false);
	}
}
тока ж их нада возвращать на место потом

Старый 10.03.2008, 02:36
khorokhorya вне форума Посмотреть профиль Отправить личное сообщение для khorokhorya Посетить домашнюю страницу khorokhorya Найти все сообщения от khorokhorya
  № 5  
Ответить с цитированием
khorokhorya

Регистрация: Jul 2006
Сообщений: 136
Отправить сообщение для khorokhorya с помощью ICQ
прикольно), а нельзя как-нить чтобы например Y последующей был равен Y предыдущей + её высота, и как нить апдейт делать ежекадрово?

Старый 11.03.2008, 01:12
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Сначала надо загрузить один объект, потому определить его размеры и только потом начинать грузить следующий.
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 11.03.2008 в 17:34.
Старый 11.03.2008, 17:27
Aisaid вне форума Посмотреть профиль Отправить личное сообщение для Aisaid Найти все сообщения от Aisaid
  № 7  
Ответить с цитированием
Aisaid
[+3 19.07.07]
 
Аватар для Aisaid

Регистрация: Aug 2006
Адрес: Kharkov, Ukraine
Сообщений: 129
Отправить сообщение для Aisaid с помощью ICQ
если все thumbnail одинакового размера, то можно сделать универсально...
хотя правильнее было бы, как и сказал iNils, сначала определять размер имажа
а алгоритм динамического сдвига я могу выслать (недавно тренировался делать полностью динамическое меню...)
__________________
Самый великий программер - БОГ!

Старый 11.03.2008, 19:17
khorokhorya вне форума Посмотреть профиль Отправить личное сообщение для khorokhorya Посетить домашнюю страницу khorokhorya Найти все сообщения от khorokhorya
  № 8  
Ответить с цитированием
khorokhorya

Регистрация: Jul 2006
Сообщений: 136
Отправить сообщение для khorokhorya с помощью ICQ
Aisaid, все thumbnail одинакового размера когда закрыты и когда открыты, а когда на них наводишь происходит анимация, и хочется, чтобы остальные закрытые отъезжали , открывая наведённый, если у тебя есть динамическое меню вышли пожалуйста, я делаю диплом мне хотелось меню как на сайте http://www.marc-aurel.com/2007/ в разделе lookbook? где фотки моделей выбираются. Но если будет чтото интересное динамичное но в другом виде тоже может подойти....

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

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

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


 


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


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