mmm creo entender lo que quieres Azid...
Según entiendo el problema, yo lo que haría sería implementar un mensaje de Windows a cómo sugieres y luego en el padre hacer la suma... por ejemplo así:
en las ventanas hijas, al seleccionar una celda o cerrar la ventana:
Código Delphi
[-]
begin
PostMessage(FormularioPadre.Handle, WM_SELECTEDCELLCHANGED, 0, 0);
end;
En el formulario padre:
Código Delphi
[-]
...
protected
procedure SumarCeldas(Message: TMessage); message WM_SELECTEDCELLCHANGED;
...
...
procedure TFormularioPadre.SumarCelda(Message: TMessage);
var
I, B: Integer;
selected_sum: Integer;
begin
for I := to Screen.FormCount - 1 do
if Screen.Forms[i].inheritsFrom(TAncestroVentanaHija) then
with TAncestroVentanaHija(Screen.Forms[i]).Regilla do
end;
Saludos!
Espero que hallas entendido mi pseudo código y te ayude a resolver el problema.