Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Situarse en un TreeView (https://www.clubdelphi.com/foros/showthread.php?t=14046)

TONIAM 08-09-2004 13:57:17

Situarse en un TreeView
 
Hola Foro,
tengo en un mantenimiento un Treeview que cargo los nodos con familias y subfamilias, cuando entro en el formulario cargo el arbol.
Al dar de alta un registro nuevo voy situandome en el nodo que quiero para completar el alta y esto funciona correctamente, pero cuando voy a realizar una modificacion, quisiera que al entrar en el formulario el arbol se abriera y que se situara en el nodo que se dio el alta y no como si fuera un alta nueva.
¿Esto es posible?.
Gracias a todos y un saludo

Lepe 08-09-2004 15:14:12

Si estas modificando una "familia", que dicho de paso no sé que es, seguro que puedes saber donde está situado en el Treeview, y si no, haz una rutina que pasando un valor lo encuentre en el Treeview y lo seleccione.

Código Delphi [-]
function Tform_Treeview.Seleccionar( FamiliaOCampoUnico:string):Boolean;
begin
{realizas una busqueda en el treeview, y devuelve false o true si lo encuentra.
Puedes usar AbosoluteIndex, para realizar la búsqueda por todos los nodos}
end;

¿es mas o menos esto?

Saludos

yusnerqui 08-09-2004 15:32:10

No me queda clara
 
No me queda clara tu pregunta, pero quizás pueda ayudarte:

Para saber el índice absoluto de un nodo
Código Delphi [-]
 Node.AbsoluteIndex;

Para expandir el TreeView
Código Delphi [-]
TreeView1.FullExpand

para expandir un nodo en específico:
Código Delphi [-]
 TreeView1.Items[5].Expand(true);

para seleccionar un nodo del treeview sabiendo su índice:
Código Delphi [-]
 TreeView1.Selected := TreeView1.Items[3]
// esto puede ser en combinación con Node.AbsoluteIndex o sea
 TreeView1.Selected := TreeView1.Items[Node.AbsoluteIndex ]

Te recomiendo que guardes el AbsoluteIndex del nodo que quieres seleccionar y uses estos métodos para lograr tu propósito.

Espero haberte ayudado, Un saludo.;)


La franja horaria es GMT +2. Ahora son las 04:23:13.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi