[Lazarus-es] Consulta sobre TTreeView
Jose Antonio Cuello
josea en artextrading.com
Mie Jul 8 12:37:50 CEST 2009
La solución es mediante la property Data que tienen todos los
TTreeViewNode. No tienes que derivar del TTreeView sinó crearte una
estructura de objetos, es decir un TObject por cada nodo que incluyas en
el TTreeview y en lazar ese objeto al nodo ya sea cuando creas el nodo
mediante .add o mediante el método .addChildObject del TTreView.Items
Normalmente para este tipo de trabajos me creo una estructura de objetos
basándome en un TListObject paralelo al TTreview así es más fácil crear,
gestionar y eliminar todos los objetos que enlazas con los nodos.
Otro tema es el de pintado de las columnas, que tendras que hacer
manualmente puesto que el evento de pintado del TTreeview sólo te
pintará el caption. Creo recordar que era uno de los eventos OnDraw del
TTreeView pero ahora no tengo ningún ejemplo disponible para confirmártelo.
> Message: 1
> Date: Tue, 7 Jul 2009 07:02:42 -0500
> From: ELMO CALATAYUD <e_calatayud en hotmail.com>
> Subject: Re: [Lazarus-es] Consulta sobre TTreeView
> To: Lista Lazarus <lazarus-es en lists.lazarus.freepascal.org>
> Message-ID: <COL104-W495498A5ED638A525ED24287280 en phx.gbl>
> Content-Type: text/plain; charset="iso-8859-1"
>
>
> Hola Jose
>
> Muchas gracias por contestar, me confirmas que la solución seria por la via del objeto Data que es un puntero que permiten los TTreeNodes, para implementar su visualizacion ¿será necesario crear un componente derivado de TTreeView?, es decir cambiar el metodo que muestra la vista TTreeView, para que muestre ademas del String, el dato que esta guardado en el puntero a Objeto, esta ultima parte se me complica hacerlo, por ello te pido por favor, me envies una unidad con implementación similar, que sirva como ejemplo, para tomar la posta. Si gustas publicarlo en algun foro donde todos los usuarios puedan apovecharlo creo que seria ideal en hispalazarus, he puesto un Post, donde puede darse mas detalle sobre el tema.
>
>
> http://hispalazarus.mi-web.es/foro/viewtopic.php?p=804#804
>
>
> Gracias nuevamente.
>
> Elmo
More information about the Lazarus-es
mailing list