Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Salir del programa (https://www.clubdelphi.com/foros/showthread.php?t=30387)

Luli 05-04-2006 02:21:30

Salir del programa
 
Bien muchas gracias por su cooperación que ha sido muy valiosa. Ahora tengo otra duda, bueno en realidad son dos.

La primera, en el menú del programa que estoy haciendo, le puse la opción Salir y no sé como hacer que lo haga, es decir, que se salga del programa cuando le doy salir.

La segunda, quiero saber de que manera puedo ... "empaquetar" mi programa, no sé como llamarlo, es que siempre que trabajo en un software lo hago desde delphi y ya, pero ahora este lo quiero instalar en otra pc, sin que ésta tenga delphi, como instalamos normalmente muchos programas, supongo que hay alguna forma de hacerlo pero no la conozco y espero que ustedes me puedan orientar, nuevamente muchisimas gracias!!

dec 05-04-2006 02:34:04

Hola,

Para cerrar el programa bastaría con ejecutar el método "Close" del formulario principal, algo así:

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  Self.Close;
end;

Delphi, así, generalmente, incluye en el ejecutable de un programa lo que necesita para ejecutarse, siempre que no hagas uso de archivos "DLL" de terceros, o, en definitiva, no necesites añadir "algo" que sea menester aparte.

Por regla general, creo que podría decirse, un ejecutable compilado con Delphi para Win32 funcionará en cualquier Windows de 32 bits. Ignoro si desde Windows 95 (diría que sí), pero, prácticamente seguro desde versiones posteriores, incluyendo Windows XP.

Crear un instalador para tu programa, si lo ves necesario, no es demasiado complicado (depende del programa, claro) utilizando alguna herramienta del tipo de InnoSetup, un programa muy utilizado para estos menesteres, escrito en Delphi, de código abierto y gratuito.

Luli 05-04-2006 02:41:34

Hola, gracias por responder.

Bien, lo que hice para cerrar el programa fue esto:


Código:

procedure TForm1.Salir1Click(Sender: TObject);
begin
 
Application.Terminate;
end;

y probé con la otra línea, la de Self.close y funciona igual.

Con lo demás apenas voy a empezar, nuevamente muchas gracias por el tiempo, hasta pronto...

dec 05-04-2006 02:57:22

Hola,

Piensa que el método "Close" del formulario terminará por llamar a "Application.Terminate", pero, antes disparará el evento "OnClose" del formulario, sea este el principal o no, y además dará pie a la posibilidad de abortar el cierre de la aplicación en el evento "OnCloseQuery" del formulario principal, es decir, algo así sería posible usando el método "Close", pero no "Application.Terminate":

Código Delphi [-]
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  CanCLose := Application.MessageBox('¿De veras quieres salir?',
    'Confirma, por favor', MB_ICONQUESTION or MB_OKCANCEL) = IDOK;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  ShowMessage('Se va a cerrar el formulario y la aplicación...');
end;

Es decir, haciendo uso del método "Close" puedes aprovechar los eventos "OnClose" y "OnCloseQuery", si esto te sirve de algo, claro está.

Luli 08-04-2006 04:01:14

Muy buena observacion
 
Hola, no habia pensado en eso, muchas gracias, fue una muy buena observación y claro que me es de utilidad... hasta pronto y nuevamente gracias


La franja horaria es GMT +2. Ahora son las 10:35:55.

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