Fórum ainda sobre o xis-zinho la´ em cima do form #163990

01/06/2003

0

como eu faco para associar aquele xis-zinho que fica la´ em cima do formulario com um determinado botao do proprio formulario, para que quando o usuario fechar o formulario la´ por cima, execute as propriedades do meu botao que eu criei para a saida?

Petrified Eyes respondeu:
************************
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Button3Click(self); //essa é a suposta ação do botão que você falou...
end;
*************************

Se eu fechar o form pelo xis-zinho, tudo ok! porem se eu fechar o form pelo button3, o FormClose e´ executado duas vezes.
Ou seja, ainda nao esta´ perfeita a resposta.

diante mao ja´ agradeco as ajudas.


Adonis

Adonis

Responder

Posts

01/06/2003

Alphablend

Bom, achoq ue deve ser isso que vc quer saber né ?
Vc quer que quando vc feche o programa pelo ´X´ do Form ele apareça uma mensagem peguntando se vc quer fechar ou não.

Se for isso a resposta é a seguinte

no evento OnCloseQuery do Form coloque a seguinte função :

if application.messagebox(´Deseja sair ?´,´Saindo...´,4)=idyes then
  CanClose:= true
else
  CanClose:= False;


E no botão, com o qual vc quer fechar o programa coloque apenas o comando CLOSE;

Espero ter ajudado!!!!
Espero sua resposta pra ver se deu certo ou se era isso que vc queria ....

[]´s

AlphaBlend


Responder

Gostei + 0

01/06/2003

Adonis

AlphaBlend,

Diante mao ja´ agradeco a ajuda. Porem nao e´ isso.
O problema e´ o seguinte:

Eu tenho o Form.
Tenho um OnCreate com:
Table1.Open;
Tenho um botao (BitBtn1) no form (para sair e fechar o mesmo) com:
Table1.Close;
Close;

Se eu fechar o form pelo xis-zinho la´ em cima, o botao (BitBtn1) nao e´ executado e o Table1.Close nao e´ executado, ou seja, o form fechou mais a table1 ficou aberta.
Isto e´ um exemplo, mais o meu BitBtn1 no meu sistema, faz realmente muito mais coisas...

Se puder me ajudar agradeco...


Responder

Gostei + 0

01/06/2003

Alphablend

Faz assim entaum ....
no evento OnCloseQuery do Form coloque a seguinte função :
if application.messagebox(´Deseja sair ?´,´Saindo...´,4)=idyes then 
begin
  Table1.close;  
  CanClose:= true 
end
else 
  CanClose:= False; 


E no botão só o comando CLOSE;

Espero ter respondido sua pergunta


Responder

Gostei + 0

01/06/2003

(conta Desativada)

Vai no evento OnClose do Form e digita:
Table1.close;


Vai no evento OnClick do botão e digita apenas:
close;


:wink: Simples, não ?


Responder

Gostei + 0

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

Aceitar