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

Вернуться   Форум Flasher.ru > Flash > Flex

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

Регистрация: Jan 2007
Сообщений: 91
По умолчанию Удаление объекта из другого компонента, созданного программно

Добрый день, столкнулся с трудностью. Есть в руте следующая конструкция:

Код:
...
<Script>
...
private function initApp();void{
ml.addEventListener("removeCH", remChild);
dataFrame.addItem({image:"pic.jpg"});
myList.dataProvider = dataFrame;
}

private function remChild():void{
/* здесь надо подсветить элемент из канваса обычным увеличением альфы. Допустим я нажал на баттон во втором итеме в горизонталлисте, соответственно надо подсветить из канваса  элемент, который в нем был создан вторым по порядку.*/

place["img"+ml.selectedIndex].alpha = 1; 

/* что-то вроде того, то есть во втором ас я мог обращаться к элементу, как к массиву, но данная конструкция не работает*/
}

private function make():void{
var img:Image = new Image();
img.source="somepic.jpg";
img.name = String("img"+int(ml.length-1));
img.alpha = .5;
place.addChild(img);
}
...
</Script>
<Canvas id="place">
<Button click="{make();}"/>
<mx:ArrayCollection id="dataFrame"/>
<HorizontalList id="ml" itemRender="myIR"/>
здесь все ок. Мой компонент myIR содержит кнопку, при нажатии на нее я хочу подсветить элемент из канваса, который был создан вместе с созданием очередного чайлда в горизонталлисте. То есть, когда я нажимаю мой Button, я добавляю новый элемент в горизонтал лист и здесь же в канвас добавляю новый элемент на основе myIR. Хочу связать вместе и child из horizontallist и child из canvas.

мой myIR сомпонент имеет след. структуру на основе канваса

myIR.mxml
Код:
...
<Script>
private function deleteItem();void{
dispatchEvent(new Event("removeCH", true, true));
}
</Script>
<Button click="{deleteItem();}">
...

Старый 27.05.2008, 17:25
MyChemic вне форума Посмотреть профиль Отправить личное сообщение для MyChemic Найти все сообщения от MyChemic
  № 2  
Ответить с цитированием
MyChemic

Регистрация: Jan 2007
Сообщений: 91
немного подумав решил упростить код, но смысл от этого не меняется. Задача остается той же:

Код:
Делаю картинки в канвасе
<mx:Canvas id="place"/ width="100%" height="100% "/>
for (var i:uint=0; i<3; i++){
var img:Image = new Image();
img.source = 'pic.jpg';
img.alpha = .5;
img.x = i*20;
place.addChild(img);
}

отлично.

далее есть кнопка, которая ждет события click
<mx:Button click="select( 3);"/>

private function select(i:Number) :void{
// здесь надо подсветить картинку, зная только индекса создания
place[i].alpha = 1; // здесь не знаю что писать
}

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

Регистрация: Jan 2007
Сообщений: 91
решение getChildAt();
можно закрывать

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

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

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


 


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


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