Dando erro na Hora de fechar form porque ?
E ai galera estou com o seguinte problema, tenho um formulario de solicitação de serviço que na hora que o usuario digita o nome do cliente ele busca no banco de dados se não encontrar ele pergunta se o usuario quer cadastrar o cliente dai então ai se o cliente confirmar ele automaticamente abre o formulario de cadastro, Só que na hora que ele abrir o formulario de cadastro eu quero que ele feche o formulario de solicitaçao só que na hora que faço isso ele da o seguinte erro:
[b:829faccc1f]Access violation at address 00000000. Read of address 0000000.[/b:829faccc1f]
E eu uso a seguinte linha de comando:
[b:829faccc1f]axoC:=dm.IBcadcliente.locate (´nome´, rxdbnome.Text,[]);
if axoC = false then
Begin
Case MessageBox (Application.Handle, Pchar (´Deseja Cadastrar o cliente´+rxdbnome.Text), ´Cliente não cadastrado´, MB_YESNO) of
idYes:
Begin
If fcadcliente = Nil then
Application.CreateForm(TFcadcliente, Fcadcliente);
Fcadcliente.BringToFront;
Fsolicit.Close;
end;
idNo:Abort;
end;[/b:829faccc1f]
OBS: Estou usando MDI Form e MDI child não sei é por causa disso que da esse erro
:cry: Então o que pode estar acontecendo para dar este erro e como eu posso resolver isto :?:
Valeu agradeço desde Já!!! :wink:
[b:829faccc1f]Access violation at address 00000000. Read of address 0000000.[/b:829faccc1f]
E eu uso a seguinte linha de comando:
[b:829faccc1f]axoC:=dm.IBcadcliente.locate (´nome´, rxdbnome.Text,[]);
if axoC = false then
Begin
Case MessageBox (Application.Handle, Pchar (´Deseja Cadastrar o cliente´+rxdbnome.Text), ´Cliente não cadastrado´, MB_YESNO) of
idYes:
Begin
If fcadcliente = Nil then
Application.CreateForm(TFcadcliente, Fcadcliente);
Fcadcliente.BringToFront;
Fsolicit.Close;
end;
idNo:Abort;
end;[/b:829faccc1f]
OBS: Estou usando MDI Form e MDI child não sei é por causa disso que da esse erro
:cry: Então o que pode estar acontecendo para dar este erro e como eu posso resolver isto :?:
Valeu agradeço desde Já!!! :wink:
Alecsandro Moura
Curtidas 0
Respostas
Edineidaniel
03/07/2006
Olá Alecsandro,
Seguinte vc não pode fechar/destruir um form com componentes de banco de dados abertos... Forms MDI precisam ser destruidos da memória para serem fechados!!!!
Att,
Edinei
Seguinte vc não pode fechar/destruir um form com componentes de banco de dados abertos... Forms MDI precisam ser destruidos da memória para serem fechados!!!!
Att,
Edinei
GOSTEI 0
Marco Salles
03/07/2006
Forms MDI precisam ser [b:b4881f87d7]destruidos[/b:b4881f87d7] da memória para [b:b4881f87d7]serem fechados[/b:b4881f87d7]!!!!
como este forum é democrático e de aprendizagem , gostaria de combater esta afirmação , por não acreditar em sua veracidade
Acredito que o amigo deva ter se ´[b:b4881f87d7]enganado[/b:b4881f87d7]´ na colocação , pq o minimo que se pode esperar é fechar primeiro para depois destrui-lo.. e não seria bobagem em pensar que este procedimento de fechar para depois destruir se [b:b4881f87d7]estenda[/b:b4881f87d7] a qualquer ´tipo´ de componenentes visuais , pois não tem sentido fechar algo que ja não esta mais na memória..Ai sim , teremos com certeza um erro de [b:b4881f87d7]Access violation at address [/b:b4881f87d7]
GOSTEI 0