rotina de logon
para fazer logon em um sistema usei um rotina no formcreate do frmPrincipal, a rotina de logon chama o frmLogon que tem um botao OK e Cancelar. Se digitar tudo certinho blz, mas se clicar em cancelar da erro porque tenta conecta apesar de chamar o frmPrincipal.formClose no OnClick do botao cancelar.
Nao sei se deveria abrir o zMySqlDatabase em outro lugar ou se esta certo abrir no frmPrincipal. Ou se deveira chamar a tela de Logon de outro lugar...
Uso Delphi6+zeos+Mysql
Nao sei se deveria abrir o zMySqlDatabase em outro lugar ou se esta certo abrir no frmPrincipal. Ou se deveira chamar a tela de Logon de outro lugar...
Uso Delphi6+zeos+Mysql
Evecar
Curtidas 0
Respostas
Tnaires
11/05/2004
Ao invés de chamar frmPrincipal.Close, chame Application.Terminate.
GOSTEI 0
Evecar
11/05/2004
[i:53d0dc50ef]Ao invés de chamar frmPrincipal.Close, chame Application.Terminate[/i:53d0dc50ef]
Tentei tb mas o erro persiste! Inclusive no formClose fechava a coneccao e dava um application.terminate; mas continua dizendo que o Transaction nao esta definido. Porem eu executo:
Tentei tb mas o erro persiste! Inclusive no formClose fechava a coneccao e dava um application.terminate; mas continua dizendo que o Transaction nao esta definido. Porem eu executo:
procedure TfrmPrincipal.FormCreate(Sender: TObject); begin frmPrincipal.TimerPrincipal.Enabled:=false; frmPrincipal.Caption:=´SpeedToys 0.4´; nProximaAgenda:=Now; AbreMySql(); // Aqui abre zMySqlDatabase e zMySqlTransaction Logoff1Click(Sender); // Login/Senha (BtnCancelar=>frmPrincipal.Close) UppdateTitulos(); // <= Ocorre o erro numa instrusao sql aqui dentro end; procedure TfrmPrincipal.FormClose(Sender: TObject; var Action: TCloseAction); begin ShowMessage(´desconectando...´); if zMySpeed.Connected then begin zQyTitulos.Active:=False; zQyOpcoes.Active:=False; dsQyTitulos.Destroy; dsOpcoes.Destroy; zTrSpeed.Destroy; zMySpeed.Destroy; // A rigor soh precisaria dessa linha ! end; ShowMessage(´terminando...´); Application.Terminate; end;
GOSTEI 0
Tnaires
11/05/2004
Não no OnClose do frmPrincipal, simplesmente no OnClick do botão Cancelar da tela de Logon. Sem nenhuma outra instrução, simplesmente:
A idéia é: se o usuário não quiser entrar no sistema, não há necessidade d fazer nenhuma conexão.
procedure frmLoginButton1.Click(Sender: TObject) begin Application.Terminate; end;
A idéia é: se o usuário não quiser entrar no sistema, não há necessidade d fazer nenhuma conexão.
GOSTEI 0