Total de visualizações de página

terça-feira, 29 de maio de 2012

VERIFICAR SE UM FORM ESTA CRIADO NA MEMÓRIA OU NÃO

Em alguns casos , precisamos saber se um form está criado para podermos manipular algum componente do mesmo ou tratar algumas informações , nesse caso precisamos saber se o status do form é igual a "nil" .
Se for igual a "nil" é porque o mesmo ainda não foi criado na memória.

Exemplo (evendo onclick de um button por exemplo)

if frmCliente = nil then
begin
 ...
end;

OBS : para que o comando funcione em corretamente em todos os forms da sua aplicação, é preciso que ele possa ser identificado como "NÃO CRIADO" . Por isso não esqueça de colocar o form "recebendo" nil no evendo "onclose" de cada form ou simplesmente dando um "release" nesse evento.

Assim o form sera eliminado da memoria mesmo que tenha sido criado.

Um comentário:

  1. No meu caso que não estou usando o FormStyly = fsNormal, usei o seguinte código
    < ...
    if NomedoMeuForm = nil then
    begin
    NomedoMeuForm:=TNomedoMeuForm.Create(Self);
    NomedoMeuForm:='Catalogo criado com sucesso!'; // só para testar se já estava criado ou não
    end else begin
    NomedoMeuForm:='Catalo já está criado';
    end;
    frmCatalogo.Show;

    end;
    >
    e no evento onClose do Form"NomedoMeuForm"

    Grato pela post.

    ResponderExcluir