Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   TreeView saber si esta extendido o plegado (https://www.clubdelphi.com/foros/showthread.php?t=51617)

ascrnet 21-12-2007 02:12:51

TreeView saber si esta extendido o plegado
 
hola a todos

he buscado en este foro la funcion para saber si un treeview esta extendido o plegado.

lo unico que yo se extendido todo el arbol TreeView1.FullExpand; y plegado con TreeView1.FullCollapse;

pero no se como preguntar en que estado esta el arbol extendido o plegado?

saludos

rruz 21-12-2007 06:20:10

Hola, en realidad lo que debes hacer es consultar por un nodo en particular del treeview ya que estos son los que se expanden, si asumimos que tienes un nodo root en tu arbol deberias usar algo asi.


if TreeView1.Items.GetFirstNode.Expanded then
ShowMessage('expandido')
else
ShowMessage('no expandido');


por un nodo en particular

k:=0;//Indice de tu nodo
if TreeView1.Items.Item[k].Expanded then
ShowMessage('expandido')
else
ShowMessage('no expandido');


Saludos

ascrnet 21-12-2007 15:30:39

Cita:

Empezado por rruz (Mensaje 253849)
Hola, en realidad lo que debes hacer es consultar por un nodo en particular del treeview ya que estos son los que se expanden, si asumimos que tienes un nodo root en tu arbol deberias usar algo asi.


if TreeView1.Items.GetFirstNode.Expanded then
ShowMessage('expandido')
else
ShowMessage('no expandido');


por un nodo en particular

k:=0;//Indice de tu nodo
if TreeView1.Items.Item[k].Expanded then
ShowMessage('expandido')
else
ShowMessage('no expandido');


Saludos

mmm, tengo varios root en mi arbol, yo pensaba que delphi tenia algun metodo para saber si todo el arbol esta extendido o plegado. igual gracias por sus codigos quisas mas adelante los use :D
lo que voy hacer por el momento una variable treesw de tipo booleana para controlar si el treeview esta extendido o plegado.

saludos.

rruz 21-12-2007 18:51:19

Puedes usar este codigo para determinar sin al menos un nodo esta expandido o no en el arbol.


Código Delphi [-]
function ArbolExpandido(Arbol : TTreeView): Boolean;
var
    Nodo: TTreeNode;
begin
  Result := false;
  if Arbol.Items.Count = 0 then Exit;
  Nodo := Arbol.Items[0];
  while Nodo <> nil do
  begin
    Result := Nodo.Expanded;
    if Result then Break;
    Nodo := Nodo.GetNext;
  end;
end;


La franja horaria es GMT +2. Ahora son las 11:15:02.

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