Está en la página 1de 12

TUTORIALATUTOPLAYMEDIASTUDIO7 TEMA:Tree Autor:Jdyb Enestetutorialvamosaaprenderausarelobjetotree,digamos queesteobjetoensseracomoelrboldecarpetasdelexploradorde Windows. Yahesealadodondeseencuentraesteobjetoenlabarrade tareas. Ahoranostenemosqueaprendersuspropiedades.Pongouna capturadepantalladelosatributosdelobjetoylosvoyexplicando.

Muestraunrecuadropara marcaralladodelitem

Propiedadesdeltem(ver siguientecaptura).

Aadirtemsyordenarlos

Estilodelborde


Colordefondoycolordel texto. Loquesemuestra Datointerno

Sieltemestexpandido pordefectooloexpande elusuario.

Ahoratocaexplicar eltemadelasimgenes,dndeponeimagelist, tenemosqueponeralgoparecidoaesto

Si leemos la ayuda del programa nos ayudar a crear este tipo de imgenesynosdicelasdimensiones.
UseImageList
True if the specified image list file should be used in the tree object, false if it should not be.

ImageList
A bitmap image (maximum 24bit supported) that contains 16x16 icons to be used by the Tree object as icons for each tree item. Note: The image used as the image list must be a bitmap image (.bmp). The picture above includes three 16x16 icons. The orange icon (left-most) has an index of 0. The purple icon (middle) has an index of 1. The circle icon (right-most) has an index of 2. Note: To specify which icon each tree item will display, specify the Image index in each item's properties.

ImageListTransparentColor
The color that will be transparent in the image list. Click the select button to bring up a color chooser. The color that you click on will be used to represent transparency in the image list.

Como vemos es fcil de entender, se trata de crear una imagen en bmp que contenga los iconos de los item. Luego especificamos el color quenohayquetenerencuentadelbmp. Para seleccionar que icono poner en cada tem se va a la captura anterior y se especifica el ndice dentro de la imagen bmp, es decir un simple nmero contando de izquierda a derecha los iconos que hay en el bmp. Bueno, en lo que a aspecto se refiere yo creo que ya est todo explicado, habr alguien que se pregunte cmo poner una imagen de fondo, pero yo le dir que creo que no se puede, lo he mirado y yo creo queno,loquesepuedeseleccionareselcolordefondo.

Ahorayocreoqueyapodemospasaralaaccin,esdeciravertodo lo que podemos hacer con este objeto, como os podeis imaginar todo depende de la imaginacin de uno mismo. Pero ya veris que las posibilidadessonmuchas. Yo creo que lo primero que vamos a hacer es explorar las funciones disponiblesporencimayluegoveremosunejemplo. Tree.CollapseNode("Tree1", "1-1");Encoge nodo,esdecir,lodejacerrado,nosevenlossubnodos. un

A partir de aqu llamaremos nodos a cada uno de los tems del rbol. Tree.EnsureVisible("Tree1", "1-1");Se asegura de que un determinado nodo est visible, es decir, expande todo lo que se necesiteexpandirparaqueelnodoseleccionadosehagavisible. Tree.ExpandNode("Tree1", especificadoenlafuncin. "1");Expande el nodo

result=Tree.GetSelectedNode("Tree1");Devuelve elndicedelnodoqueestseleccionado. result=Tree.GetNode("Tree1", "1-1");Nos devuelve una tabla con las propiedades del nodo del cual hemos indicado el ndice. En el ejemplo veremos cmo acceder a los campos de la tabla quedevuelve. Hay ms funciones que estas, como podemos ver en la captura de pantalla,perolasqueusaremosprincipalmentesonlasdosltimasquehe nombrado, las dems son ms comunes a todos los objetos y alguna otra queseveasimplevistaloqueesdesobra.Sihayalgoquenoentiendano alguna funcin en especial que no sepan utilizar no duden en preguntrmelo.

El ejemplo que voy a hacer va a ser muy simple, voy a hacer un rbol con varios objetos, y segn el objeto seleccionado se realizar una determinada accin, que creo que es ms o menos lo que nos interesa a todos. Vamos paso a paso. Una vez que tengamos creado el proyecto a nuestro gusto lo que tenemos que hacer es crear un nuevo rbol como haciendo click en la barra de herramientas (ver primera captura de pantalla). Luego le damos doble click encima y tendremos sus propiedades, yo voy a hacer un rbol bastante sencillo, para aadir tems slo hay que usar las teclas que hay debajo de la lista como ya puse en la

captura de pantalla. Las flechas de arriba ya bajo son para ordenar, y las de izquierda a derecha para cambiar la jerarqua del nodo dentro del rbol. Veamos esta captura de pantalla para mostraros el rbol (mini) que hecreadoyo.

Comoveisesmuysimple,esterbolquedaraennuestroproyecto as.

Por qu aparece expandido si en la captura anterior que indicaba las propiedades estaba sin expandir? Porque la casilla expandir de las propiedadesdelnodoProgramasestmarcada.

Comovisteisanteriormentecadanodollevauncampodetextoyun ndicecomolosComboBoxy demsobjetos.Puesbienesoesloqueseva a usar para saber cual est seleccionado, y as realizar las determinadas accionesquequeramosyesasaccionessernrealizadascuandoqueramos (alhacerclick,dobleclick,etc).

Estos son todos los momentos en los que se puede realizar una accin, los ms comunes que podemos usar con OnSelect y On Double Click. En el ejemplo vamos a usar el del doble click, pero podemos utilizar eldelsimpleclicktambin,enestecasodaralomismo. En los ndices del rbol utilizar la regla siguiente, que creo que es lo msordenadoydeestamaneranonosharemosningnlo. En los padres poner nmeros, en los hijos, poner el padre un guin opuntoyelnmerodehijo,yassucesivamente. Lespongounejemplo.

Padre

Hijo1

Hijo2 Padre2

Una vez que ya tienen todo esto ya pasamos a la parte del cdigo, vamosacolocartodoelcdigoeneldobleclick. Lo primero aadiremos la funcin que nos devuelve el nodo seleccionado.

Ahora debemos de usar la que nos devuelve una tabla con las propiedadesdedichonodo(elseleccionado).

Y ahora lo que debemos de hacer es mediante estructuras condicionalesespecificarunaseriedeacciones. Para hacer esas estructuras condicionales debemos de mirar la ayuda para saber las claves de la tabla que nos devuelve la segunda funcin y as acceder al campo que queramos, que en este caso ser el Itemdata.

Ahorayapodemos empezarahacerlosif,yloqueusaremosserel operador de acceso a una estructura que es el punto, que se usa para acceder a los campos de una estructura, en este caso nuestra estructura sellamaraprop(sincomillas).

Les pongo una captura de pantalla de cmo debera quedar una vez terminado. En el ejemplo la accin que realiza es sacar un cartel con el nodoquesehaseleccionado.

Acontinuacinelcdigoparaqueloveanmejorqueenlacaptura.
select = Tree.GetSelectedNode("Tree1"); prop = Tree.GetNode("Tree1", select); if prop.Data=="1-1" then --Hacer una accin result = Dialog.Message("Seleccionado", "Ha seleccionado el nodo 1-1", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); end if prop.Data=="1-2" then --Hacer una accin result = Dialog.Message("Seleccionado", "Ha seleccionado el nodo 1-2", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); end --As sucesivamente para todos los nodos

Ya est todo listo, con este pequeo ejemplo ya sabr cmo hacer ms cosas con este nuevo objeto, ya que todo se basa en lo mismo, lo nico que variar sern las acciones, que depende de lo que queramos hacer. Espero que con su imaginacin le saquen un gran provecho a este tutorialparahacergrandescosas. Sinnadamsquedecirmedespidohastalaprxima. TutorialbyJdyb

También podría gustarte