Flex에 대한 생각...(개인적인 생각입니다.)

Programming 2009. 9. 13. 17:56 by touchsoul

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
private function doTreeSelect():void
{
if (prodTree.selectedItem) 
listDP.addItem(prodTree.selectedItem.copy());

굵은 부분에서 copy()를 하는 이유는 addItem이란 메소드가 prodTree 안에 있는 객체 자체를 복사해 추가해 주는 방식같다.
그래서 copy()를 안적어줄 경우 prodTree에도 그 객체가 추가되고 listDP에도 추가되는 참 웃긴 경우가 생기는 것 같다.

private function doListRemove():void
{
if (prodList.selectedItem)
listDP.removeItemAt(prodList.selectedIndex);
}

addItem에서 copy() 안쓰고 할 경우 이곳에도 엄청난 결과가 나타난다. 그 결과는 prodList에서 선택된 객체가 listDP와 prodList에서
모두 삭제되는 경우가 생겨났다. 이 부분이 되는 이유는 prodList.selectedIndex에서 index값을 검색해서 삭제를 하기때문에 되는 것 같다.

이 글은 저의 개인적인 생각이며, 틀렸다고 생각 하시는 분은 그냥 막 태클을 걸어주시기 바랍니다.
Nav