Yoshio wrote: > Olá pessoal. > Estava fazendo um form para ser herdado, porem não consegui fazer com > que os forms descendentes se "auto-liberar" da memória. Para cada form > descendente eu tenho que colocar este código no OnClose: > ---------------------------- > Action := caFree; > FormDescendente1 := nil; // ou FormDescendente2, FormDescendente3... > ----------------------------
O problema que você tem não é o auto-liberar. O caFree faz isto. O problema é que você tem um ponteiro (FormDescendente1) que aponta para um objeto destruído, e que poderá te causar um AV mais adiante. > É praticamente o mesmo código em todos os forms descendentes. Não há > uma maneira de fazer isto automático, como algum código no OnClose do > form herdado que faz isso automaticamente? Escrevi sobre isso: http://blog.joaomorais.com.br/2008/08/31/dica-gerenciamento-form.html Joao Morais