Fórum Instância de Forms #374625

06/09/2009

0

Tenho um form chamado fmFiltro
Dentro de um outro form, chamado fmEqpto, quero instânciá-lo e faço assim:

lfmFiltro := fmfiltro.Create(fmEqpto);

Mas, dentro do fmEqpto tenho comando que usa variáveis do fmFiltro, tipo
fmFiltro.pmTipo := 1;

Ao compilar tudo bem, mas no momento de execução dá um erro de exceção, o que é obvio, pois o fmfiltro não está aberto e, sim, a sua instância.

Como resolver isto aí?


Crpavao

Crpavao

Responder

Posts

06/09/2009

Marco Salles

Vc tem que instanciar a partir da classe e não do objeto

lfmFiltro := fmfiltro.Create(fmEqpto); vai da acesso violado


lfmFiltro := Tmfiltro.Create(fmEqpto); 


Agora , não é obrigatorio , mesmo que vc instancie este form a partir de
outro que o mesmo seje o seu proprietário ... Tem que ver a real necessidade
disso.

Mas a principio para a sua duvida a utilização acima deve resolver


Responder

Gostei + 0

07/09/2009

Crpavao

Marco,
Obrigado pela força.
Mas era isto mesmo que estava fazendo (só passei errado a informação).
O problema era outro: eu Estava definindo a variável lfmFiltro : TForm e deveria ser lfmFiltro : TfmFiltro.

Agora tô com outro pau, mas vou tentar resolver por aqui mesmo (questão de lógica, penso eu).

Obrigado, cara!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar