Ver Mensaje Individual
  #40  
Antiguo 26-05-2016
mblascog mblascog is offline
Miembro
 
Registrado: may 2006
Posts: 131
Reputación: 19
mblascog Va por buen camino
escafandra, perdida es poco. El último programa que escribí en Delphi hace muchos años, no sé 10, 15, y la verdad, a pesar de recordar mucho, me cuesta.
Suerte tengo de la ayuda de este foro, y la verdad, lo estoy pasando pipa.
Finalmente lo he conseguido siguiendo tus indicaciones, muchísimas gracias.
Pero me faltaría una cosa, interesa que no se pueda cerrar el programa, sinó esconderlo. Pensaba que sería fácil, en el onclose del formulario principal, pensaba en action := caHide, pero no funciona.
He buscado por el foro, y he encontrado esta explicación de Lepe, del año 2005, pero no la entiendo, no sé que és lo que tengo que hacer.
Para salir del paso, y la verdad me está bien, he eliminado los botones del form, y en la opción Salir del menú, he puesto Hide y funciona

De nuevo muchas gracias

Cita:
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);

// Estas 2 comprobaciones son las que hace terminar la aplicación
// y por eso solo funciona con caNone, con los demás se cierra.
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;

Última edición por mblascog fecha: 26-05-2016 a las 10:28:50.
Responder Con Cita