MyChemic
27.05.2008, 16:52
Добрый день, столкнулся с трудностью. Есть в руте следующая конструкция:
...
<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();}">
...
...
<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();}">
...