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