Eljuan: te paso un procedimiento que que cambia el texto a toda la descendencia de un nodo determinado, supongo que es parecido a lo que quieres hacer:
Código Delphi
[-]
procedure TForm1.CambiarTextoDescendencia(Nodo: TTreeNode);
var
i:integer;
begin
if nodo.HasChildren=true then
begin
for i := 0 to (Nodo.Count - 1) do
begin
CambiarTextoDescendencia(nodo.item[i]);
nodo.item[i].text:='Texto Cambiado';
end;
end;
end;
Como bien dijo Lepe, HasChildren devuelve true si el nodo tiene descendencia. Item[n] te permite trabajar con el hijo número n del nodo actual (están indexados a partir de 0). Count cuenta cuantos hijos tiene el nodo actual.
Para ejecutarlo, suponiendo que queres alterar el texto de la descendecia del nodo seleccionado:
Código Delphi
[-]
Form1.CambiarTextoDescendencia(treeview1.Selected);
Para adaptarlo a lo que necesitas, solo tendrías que cambiar la asignación de texto al nodo por la/s operación/es que necesitas realizar.
Espero que te sirva.
Saludos, Enrique Gabriel Baquela.