![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2010
Сообщений: 25
|
Есть МувиКлипы созданные дuномически друг под другом (высото 100px и отступ между ними 10 px)с кнопкой Закрыть каждый.
Клип1 Клип2 клип3 клип4 на кнопку закрыть удаляю выбраный клип(к примеру 2) (removeChild(Клип2) ) на сцене остаються пустое место .. как мне поднять все остальные клипы что-бы были друг по другом ? |
|
|||||
|
[+1 19.06.10]
[+1 27.07.10] Регистрация: Aug 2009
Адрес: UTC+2
Сообщений: 353
|
дайте код, которым создаете мувики
__________________
Trapatatupatupa |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 25
|
creat.addEventListener(MouseEvent.CLICK, creat_f); var kol:int=5; var MyclipArray:Array = new Array(); function creat_f(event:Event):void { for (var i:Number =0; i<kol; i++) { MyclipArray[i] = new Myclip; addChild(MyclipArray[i]); MyclipArray[i].y=100*i; MyclipArray[i].name = i; MyclipArray[i].close.addEventListener(MouseEvent.CLICK,del); } } function del(e:Event){ removeChild(MyclipArray[e.target.parent.name]); } |
|
|||||
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
не проверял, но должно работать.
creat.addEventListener(MouseEvent.CLICK, creat_f); var kol:int=5; var MyclipArray:Array = new Array(); function creat_f(event:Event):void { for (var i:int=0; i<kol; i++) { MyclipArray[i] = new Myclip; addChild(MyclipArray[i]); MyclipArray[i].y=100*i; MyclipArray[i].name = i; MyclipArray[i].close.addEventListener(MouseEvent.CLICK,del); } } function del(e:Event){ removeChild(MyclipArray[int(e.target.parent.name)]); refreshMyclip(int(e.target.parent.name)); } function refreshMyclip(itemIndex) { MyclipArray.splice(itemIndex, 1); if (kol>1) { kol--; for (var i:int=0; i<kol; i++) { MyclipArray[i].name = i; MyclipArray[i].y=100*i; } } } Последний раз редактировалось mikhailk; 01.05.2010 в 23:23. |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 25
|
Так ни чего и не получается...
Задача состоит чтобы создать Мувиклипы с дополнительными параметрами(свойствами) типа String и кнопкой закрыть , разместить их в колонку друг под другом, при нажатие на кнопку "закрыть" удалялся этот Мувиклип, а все остальные Мувиклипы под ним если есть поднимались выше .. Таким макаром создаю... var MyclipArray:Array = new Array; function creat_f1(id:int,Param1:String,Param2:String):void { var nom:int = MyclipArray.length; MyclipArray.push(new Myclip()); MyclipArray[nom].id = nom; //??????????? MyclipArray[nom].param1 = Param1; MyclipArray[nom].y = 100*nom; addChild(MyclipArray[nom]); MyclipArray[nom].close.addEventListener(MouseEvent.CLICK,del); } function del(event:Event){ var i:int = Myclip(event.target.parent).id; trace("Обработка кнопки удалить my id "+i); // trace("Обработка кнопки удалить " + MyclipArray[i].param1); // trace(event.target.name); removeChild(MyclipArray[event.target.parent.id]); refreshMyclip(int(event.target.parent.id)); } Последний раз редактировалось Ckazkatmn; 02.05.2010 в 03:56. |
|
|||||
var MyclipArray:Array = new Array; function creat_f1(id:int,Param1:String,Param2:String):void { var nom:int = MyclipArray.length; MyclipArray.push(new Myclip()); MyclipArray[nom].param1 = Param1; MyclipArray[nom].y = 100*nom; addChild(MyclipArray[nom]); MyclipArray[nom].close.addEventListener(MouseEvent.CLICK,del); } function del(event:Event){ var i:uint=MyclipArray.indexOf(event.target.parent); removeChild(MyclipArray[i]); for(var j:uint=i+1; i<MyclipArray.length; i++){ MyclipArray[j].y-=100; MyclipArray[j-1]=MyclipArray[j]; } MyclipArray.length--; } Последний раз редактировалось incvizitor; 02.05.2010 в 10:59. |
|
|||||
|
Регистрация: Jan 2010
Сообщений: 25
|
решил проблему ...
при создание мувиклипа указал свойство name function del(event:Event){ var i:uint=MyclipArray.indexOf(event.target.parent); var g:String = event.target.parent.name; trace("Имя удаляемого обьекта "+g); trace("Индекс "+i); removeChild(getChildByName(g)); MyclipArray.splice(i, 1); for(var j:int=0; j<MyclipArray.length; j++){ MyclipArray[j].y =100*j; } Подскажите как удалить мувиклип... (circle типа мувиклип) в нем (panelka типа Scrollbar) var Box:Sprite = new Sprite; MyclipArray.push(new Myclip()); MyclipArray[nom].name = id; Box.addChild(MyclipArray[nom]); MyclipArray[nom].close.addEventListener(MouseEvent.CLICK,del); circle.panelka.source=Box; function del(event:Event){ var g:String = event.target.parent.name;//Имя определяет верно // circle.panelka.Box.removeChild(getChildByName(g)); //Не удаляет circle.panelka.Box.removeChild(event.target.parent); //и так не удаляет // circle.panelka.removeChild(event.target.parent); //и так не удаляет } Добавлено через 19 часов 34 минуты Ну что ни кто не поможет с проблемой из предыдущего поста? Последний раз редактировалось Ckazkatmn; 03.05.2010 в 02:17. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:38. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|