Ver Mensaje Individual
  #5  
Antiguo 03-07-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 31
Lepe Va por buen camino
Que Microsoft lo haga, no significa que hay que hacerlo así, ya he dicho que es una opinion personal; para mi un boton cerrar es un botón Cerrar

La ayuda de delphi a veces, es mas confusa que el código fuente:
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);

// 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;
Pido disculpas, lo dije de memoria sin corroborarlo. Además no uso el Cooltray, así que ignoro si tiene métodos para hacerlo de otra forma.

Por tanto creo adecuado el primer código propuesto por dec.

Un saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita