Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como cierro mi aplicacion? (https://www.clubdelphi.com/foros/showthread.php?t=32373)

MadeInBsAs 03-06-2006 23:43:39

Como cierro mi aplicacion?
 
Estoy tratando de armar mi primer sistema. y me surge una duda.
Al control SALIR (un boton) le asigne la sentencia
Código Delphi [-]
Halt(0);
para avandonar el programa.
Esto lo "arrastro" del Pascal que utilizaba esa sentencia para cerrar el programa. Esta bien utilizarla en Delphi, o hay alguna otra mas correcta?
Pregunto porque vi algun codigo fuente por ahi con la sentencia
Código Delphi [-]
Close;

JULIPO 03-06-2006 23:49:20

La segunda opcion funciona
 
La opcion de Close; funciona muy bien cierra el aplicativo en ejecucion

Sudamericano 04-06-2006 00:17:56

con "close" es suficiente, aunque te sugiero poner estas lineas en el evento closequery del Form Principal de tu aplicación, para que antes de salir realize una confirmacion



Código:

Código Delphi [-]
 
    IF MESSAGEDLG('¿Está seguro que desea Abandonar el Programa ?',mtconfirmation,[mbyes,mbno],0)
    =idNO then
    Canclose:=False;


dec 04-06-2006 00:20:58

Hola,

Bueno, según la ayuda de Delphi el procedimiento "Halt":

Cita:

Empezado por Ayuda de Delphi
Initiates abnormal termination of a program.

Description

Halt performs an abnormal termination of a program and returns to the operating system.

To perform a normal termination of a Delphi application, call the Terminate method on the global Application object. If the application does not use a unit that provides an Application object, call the Exit procedure from the main Program block.

Exitcode is an optional expression that specifies an exit code for the program.

O sea, puedes valerte de "Application.Terminate" Aunque, si como dice el compañero utilizas el método "Close" del formulario principal de tu aplicación:

Código Delphi [-]
procedure TCustomForm.Close;
var
  CloseAction: TCloseAction;
begin
  if fsModal in FFormState then
    ModalResult := mrCancel
  else
    if CloseQuery then
    begin
      if FormStyle = fsMDIChild then
        if biMinimize in BorderIcons then
          CloseAction := caMinimize else
          CloseAction := caNone
      else
        CloseAction := caHide;
      DoClose(CloseAction);
      if CloseAction <> caNone then
        if Application.MainForm = Self then Application.Terminate
        else if CloseAction = caHide then Hide
        else if CloseAction = caMinimize then WindowState := wsMinimized
        else Release;
    end;
end;

Y, por otro lado, si utilizas el método "Close" sabes que podrás aprovechar los eventos "OnClose" y "OnCloseQuery" del formulario en cuestión, si eso te sirve de algo.


La franja horaria es GMT +2. Ahora son las 00:58:51.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi