Показать сообщение отдельно
Старый 14.02.2013, 21:08
amesqit вне форума Посмотреть профиль Отправить личное сообщение для amesqit Найти все сообщения от amesqit
  № 4  
Ответить с цитированием
amesqit
 
Аватар для amesqit

Регистрация: Oct 2007
Сообщений: 255
Записей в блоге: 1
Не люблю вложнные функции, они как-то запутывают
Код AS3:
var arrButton:Array = [b1, b2, b3, b4];
var arrPicture:Array = [p1, p2, p3, p4];
 
for(var i:int = 0; i < arrButton.length; i++)
{
     arrButton[i].addEventListener(MouseEvent.CLICK, clickListener);
}
 
function clickListener(e:MouseEvent):void
{
     var index :int = arrButton.indexOf(e.currentTarget)
     if(index!=-1)
     {
          arrPicture[index].visible = !arrPicture[index].visible;
     }
}
или если не хочется искать по массиву, по каким-либо соображениям:
Код AS3:
var arrButton:Array = [b1, b2, b3, b4];
var arrPicture:Array = [p1, p2, p3, p4];
var dictinaryButton: Dictionary = new Dictionary() 
for(var i:int = 0; i < arrButton.length; i++)
{
     dictinaryButton[arrButton[i]] = arrPicture[i]
     arrButton[i].addEventListener(MouseEvent.CLICK, clickListener);
}
 
function clickListener(e:MouseEvent):void
{
	dictinaryButton[e.currentTarget].visible = !dictinaryButton[e.currentTarget].visible;
}
__________________
ответ прост: be || !be == true