PDA

Ver la Versión Completa : TreeView cambio de imagenes


Manuel
25-09-2006, 15:22:54
Hola amigos del foro, tengo un TreeView, el cual tiene un nodo padre y un nodo hijo, tengo asignado en un objeto imageslist dos iconos, 0=imagen libro cerrado, 1=imagen libro abierto. Como lo podría hacer para cambiar la imagen del nodo padre cuando este se expande y a la vez cuando se contrae. Yo he hecho algo así.

nodoPadre.ImageIndex := 0;
nodoPadre.SelectedIndex :=1;

pero esto solo me funciona cuando seleciono el nodo padre, me imago que habrá algún método para esto he buscado en el foro pero no he encontrado nada.

maeyanes
25-09-2006, 15:33:40
Podrías usar los eventos OnCollapsing y OnExpanding para lograr lo que te propones:


procedure TForm1.TreeView1OnCollapsing(Sender: TObject; Node: TTreeNode; AllowCollapse: Boolean);
begin
Node.ImageIndex := 0;
Node.SelectedIndex := 0
end;

procedure TForm1.TreeView1OnExpanding(Sender: TObject; Node: TTreeNode; AllowExpand: Boolean);
begin
Node.ImageIndex := 1;
Node.SelectedIndex := 1
end;



Saludos...

Manuel
25-09-2006, 15:53:18
Podrías usar los eventos OnCollapsing y OnExpanding para lograr lo que te propones:


procedure TForm1.TreeView1OnCollapsing(Sender: TObject; Node: TTreeNode; AllowCollapse: Boolean);
begin
Node.ImageIndex := 0;
Node.SelectedIndex := 0
end;

procedure TForm1.TreeView1OnExpanding(Sender: TObject; Node: TTreeNode; AllowExpand: Boolean);
begin
Node.ImageIndex := 1;
Node.SelectedIndex := 1
end;



Saludos...

Gracias marco me ha funcionado, algo habia hecho con expandig, pero no sabía como hacerlo cuando contraía, nunca se me habría ocurrido hacerlo en em método OnCollapsing, bueno el que sabe, sabe. Grcias de nuevo.