Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
dieguus Novato
Registrado: Segunda-Feira, 22 de Abril de 2013 Mensagens: 29
|
Enviada: Ter Jul 16, 2013 8:01 pm Assunto: Dúvida em Fechar um Form... |
|
|
Boa noite galera, peço um auxilio para vcs, Tenho um Form1 com dois speedbutton , e cada speedbutton abre o Form 2 e o outro o form3.
Bom, gostaria quando eu abrisse o form1 e clicasse o speedbutton1, que o form2 abrisse eo form1 ( anterior ) fechasse..
como eu faço??
obrigado pela atenção |
|
Voltar ao Topo |
|
|
flabed10 Novato
Registrado: Segunda-Feira, 22 de Abril de 2013 Mensagens: 63
|
Enviada: Ter Jul 16, 2013 8:12 pm Assunto: |
|
|
SE O FORM1 FOR O FORM PRINCIPAL, EU ACHO QUE NÃO PODE FECHAR ELE.
VC PODE USAR O COMANDO Form1.hide PARA OCULTA-LO E Form1.show PARA MOSTRAR ELE DENOVO.
FICARIA ASSIM:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Form1.Hide;
If Form2 = nil then
Form2:= TForm2.Create(nil);
Form2.Show;
end; |
|
Voltar ao Topo |
|
|
dieguus Novato
Registrado: Segunda-Feira, 22 de Abril de 2013 Mensagens: 29
|
Enviada: Ter Jul 16, 2013 10:43 pm Assunto: |
|
|
flabed10 escreveu: | SE O FORM1 FOR O FORM PRINCIPAL, EU ACHO QUE NÃO PODE FECHAR ELE.
VC PODE USAR O COMANDO Form1.hide PARA OCULTA-LO E Form1.show PARA MOSTRAR ELE DENOVO.
FICARIA ASSIM:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Form1.Hide;
If Form2 = nil then
Form2:= TForm2.Create(nil);
Form2.Show;
end; |
Boa noite Mestre, deu um erro
First chance exception at $75DF812F. Exception class EAccessViolation with message 'Access violation at address 00487A96 in module 'Radiologia.exe'. Read of address 00000374'. Process Radiologia.exe (428) |
|
Voltar ao Topo |
|
|
DDW Novato
Registrado: Sábado, 13 de Julho de 2013 Mensagens: 4
|
Enviada: Ter Jul 16, 2013 11:15 pm Assunto: |
|
|
Nunca vi esse erro. Tenta por o Form1.Hide no final do código. |
|
Voltar ao Topo |
|
|
sergiotucano Novato
Registrado: Domingo, 19 de Agosto de 2012 Mensagens: 87 Localização: Lorena, SP
|
Enviada: Qua Jul 17, 2013 11:27 am Assunto: |
|
|
Pelo oque eu entendi....
FORM1
|
|SPB1 - Form2
|SPB2 - Form3
Ao clicar no SPB1 Abrir o 2 e fechar o 1 correto?
O problema do Access Violation é que você esta tentando chamar algo que não esta disponível e/ou não criado em memória.
Bom, você chama o Form2 e no onshow dele, tente Form1.Visible := False;
|
|
Voltar ao Topo |
|
|
felipethadeu Novato
Registrado: Quarta-Feira, 17 de Julho de 2013 Mensagens: 16
|
Enviada: Qua Jul 17, 2013 11:31 am Assunto: |
|
|
Simples cara.
Coloca por exemplo
form2.show
form1.hide |
|
Voltar ao Topo |
|
|
3141592653589793238462643 Aprendiz
Registrado: Quinta-Feira, 4 de Julho de 2013 Mensagens: 163
|
Enviada: Qua Jul 17, 2013 11:35 am Assunto: Re: Dúvida em Fechar um Form... |
|
|
dieguus escreveu: | Boa noite galera, peço um auxilio para vcs, Tenho um Form1 com dois speedbutton , e cada speedbutton abre o Form 2 e o outro o form3.
Bom, gostaria quando eu abrisse o form1 e clicasse o speedbutton1, que o form2 abrisse eo form1 ( anterior ) fechasse..
como eu faço??
obrigado pela atenção |
Tente assim:
Form1.Hide; //Esconder o form1 (não pode-se fechar o form principal, pelo menos é oq o pessoal fala rçrç '-')
Form2.ShowModal; //Abrir o form2
Quando vc quiser fechar os 2, sem dar debug session (erro, pois vc fechará o 2 e o 1 ficará aberto, só q invisível [hide]), vá no events OnClose do form2 e coloque:
Application.terminate; //Esse serve para fechar os 2 forms, inclusive o 1 q tá invisível. |
|
Voltar ao Topo |
|
|
|