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

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
удаляем с рабочего стола "прямоугольник".
в библиотеке ставим ему linkage Property:
галка на "Экспорт фо экшн скрипт" и на "Экспорт ин фёст фрейм"
в поле id вписываем "but_in_lib"

Код AS1/AS2:
import mx.transitions.Tween;
import mx.transitions.easing.*;
// массив с данными
var my_array = ['Angelina Jolie', 'Charlize Theron', 'Памелла Андерсон', 'Бритни гг'];
var clip_array:Array = new Array();  // будущий массив кнопок
var total_j:Number = 4;
var btns_space:Number = 5; // межкнопочное расстояние
 
function whois(j){
	// обращение к данным из массива по ключу
	trace('Today I love ' + my_array[j]);	
}
 
// cсоздаем кнопки, присваеиваем события и прочие свойства.
function create_buttons(j){
	// аттачим клип (кнопку) на сцену 
	var btn = this.attachMovie('but_in_lib', 'but_' + j, j);
	//и сохраняем ссылку в массив
	clip_array[j] = btn;
 
	// расчитывем расстояние до след раздела
	btn._y = j * (btn._height + btns_space);
	btn._x = 200;  
	btn.j = j;// запоминаем в кнопке её номер
	btn.flag = false // в функции события он у вас используется
	btn.onRelease = btns_on_release;
}
 
// описываем событие
function btns_on_release(){
	for( var i = this.j; i < total_j; i++) {
		if(!this.flag){	// логика этих твинов мне не понятна...
			var tween_1alphadown:Tween = new Tween(clip_array[i + 1], "_alpha", Strong.easeOut, 0, 100, 1, true);
		}else{ 
			var tween_1alphaup:Tween = new Tween(clip_array[i + 1], "_alpha", Strong.easeOut, 0, 100, 1, true);
		}
		this.flag = !this.flag;
	}
	whois(this.j);  // ваш пример
}
 
 
 
// запускаем создание кнопок
for( var j = 0; j < total_j; j++ ){
	create_buttons(j) // сделал функцию как говорили
}