http://www.cristalab.com/foros/posting.php?mode=newtopic&f=7
y tengo una duda como podria mostrar un xml desplegado, no se como hacerlo y como en el ejemplo aparecen 3 carpetas q luego se despliegan, (no estoi seguro si esto es el codigo del tree o simplemente el xml).
(x si no me espliqué bien, lo que intento es q la primera carpeta esté desplegada (open).
muchas gracias.
Os dejo el código por si os ayuda
ARBOL.SWF
Código :
#include "../arbol.as"
this._visible = false;
//Cargamos el XML
xmlTree = new XML();
xmlTree.ignoreWhite = true;
//this._visible = false;
var cargador_lv:LoadVars = new LoadVars();
cargador_lv.load("varMenu.txt");
cargador_lv.onLoad = function(exito) {
if (exito) {
xmlTree.load(this.uno);//carga la variable llamada uno declarada en el documento de texto llamado varMenu.txt
}
else
trace("error en carga del txt");
}//fin onLoad
//xmlTree.load("uno/uno.xml");
xmlTree.onLoad = function (success){
if (success){
llenarTree(0xEED584);//le enviamos el color que le corresponde
}
else{
trace("No se pudo cargar el XML");
}
}*****************************************************
ARBOL.AS
Código :
function llenarTree(fondo){
//Atacheamos el componente
//trace(_root);
//trace(_root.contador + " " + this);
//_root.gotoAndPlay(_root.contador);
//_root.gotoAndPlay(7);
//trace(_root.contador);
//trace(this + ":cargado");
//this._visible = false;
//this.visible = false;
this.fondo.onRollOver = function(){
//trace(this._parent._x);
//_root.sombra._visible = true;
//trace(this._parent);
_root.sombra._visible = true;
_root.sombra.gotoAndPlay(2);
_root.sombra._x = this._parent._x;
_root.sombra._y = this._parent._y;
}
this.fondo.onRollOut = function(){
_root.sombra.gotoAndPlay(7);
//trace(this + " dice adios");
//_root.sombra.removeMovieClip();
//_root.sombra._visible = false;
}
/*if(this._xmouse>=0 && this._xmouse<=this._width && this._ymouse>=0 && this._ymouse<=16)
trace(this);*/
attachMovie("Tree", "miArbol", 1);
//Propiedades
miArbol.setSize(195, 315);
miArbol.setStyle("openEasing", mx.transitions.easing.Back.easeOut);
//probando propiedades
miArbol.setStyle("_alpha",100);
miArbol.setStyle("themeColor", "haloOrange");
miArbol.setStyle("backgroundColor",fondo);
miArbol.setStyle("color","0x224459");
miArbol.setStyle("fontSize",12);
miArbol.setStyle("fontFamily","Arial");
//miArbol.setStyle("embedFonts ",true);
//miArbol.setStyle("fontWeight","bold");
miArbol.setStyle("borderStyle", "none");
//miArbol.setStyle("scrollTrackColor", "0x000000");
miArbol.setStyle("hScrollPolicy","on");
miArbol.setStyle("vScrollPolicy","auto");
miArbol.maxHPosition = 300;
//miArbol.scrollTrackColor="0x3B4B5B";
//Llenamos el menu
miArbol.dataProvider = xmlTree;
//Eventos
miArbol.addEventListener("change", alSeleccionar);
miArbol._y = 32.5;
miArbol._x = 2.5;
_root.contador++;
}
//alSeleccionar
alSeleccionar = new Object();
alSeleccionar.change = function(evento) {
var seleccion = evento.target.selectedNode;
var tam = 0;
//Si es una carpeta...
if (miArbol.getIsBranch(seleccion)){
//La cerramos si esta abierta
if (miArbol.getIsOpen(seleccion)){
miArbol.setIsOpen(seleccion, false, true);
//tam = seleccion.attributes.label.length;
}
//La abrimos si esta cerrada
else{
miArbol.setIsOpen(seleccion, true, true);
//trace(seleccion.attributes.firstChild);
/*tam = seleccion.attributes.label.length + 30;
trace(tam);
var long = xmlTree.firstChild.childNodes.length;
for ( var i = 0; i < tam ; i++){
var myTreeNode = xmlTree.firstChild.childNodes[i];
miTam = myTreeNode.attributes.label.length;
if(miTam > tam)
tam = miTam;
}
trace(tam);*/
//var myTreeNode = xmlTree.firstChild.childNodes[1];
//trace(myTreeNode.attributes.label.length );
}
}
//Si es un vínculo...
else{
//getURL(seleccion.attributes.dirurl, "_parent" );
/*trace(seleccion.attributes.label);
tam = seleccion.attributes.label.length + 50;*/
getURL(seleccion.attributes.dirurl, "_parent" );
}
//trace(miArbol.width);
//miArbol.maxHPosition = miArbol._width;
//miArbol.maxHPosition = tam;
} 