左から右へドラッグ&ドロップしようとするときに、右がフォルダだったらば自動的に開きます。
下からダウンロードしてください。
ダウンロード
ソースは、TreeDragDrop.mxml のファイルひとつです。
実装はおもったよりも簡単でした。
みそは、dragOverHandler(event:DragEvent) の中で、現在どのアイテムの上にいるのかを見て、
そのアイテムで開けばいいというわけです。
今回、アイテムがXMLですので、子供の数でそこにドロップできるか決めていますが、
このitemのプロパティなんかで、フォルダかファイルかなどがわかれば、それで判断もできると思います。
[AS]
private function dragOverHandler(event:DragEvent):void{
var r:int = tree.calculateDropIndex(event);
tree.selectedIndex = r;
var node:XML = tree.selectedItem as XML;
if(node.children().length() > 0){
DragManager.showFeedback(DragManager.MOVE);
tree.expandItem(node,true,true);
}
else{
DragManager.showFeedback(DragManager.NONE);
}
}
[/AS]
追記:
最初、TreeItemRenderを継承してMouseOverでやろうとしましたが、なんかドラッグ&ドロップの状態では、
動きがぎこちなくなってしまいました。



thanks