Reholas.
Estuve pensando casi 1 hora como responder el mensaje anterior, sin mucho éxito, verás:
El problema que intentan solucionar todas las rutinas es encontrar si la ventana está creada o no y después interactuar con ellas. Usando otra filosofía nos quitamos ese problema de encima:
Código Delphi
[-]
procedure TForm1.FormClose(... Action:TCloseAction);
begin
Action := cafree;
Form1 := nil
end;
Ya no tenemos que buscar en todas las ventanas de TScreen para saber si está creada o no, basta con:
Código Delphi
[-]
if Assigned(Form1) then else
end;
DestruirForma se consigue accediendo a Form1.Close
ExpandirForma se puede sustituir por el método SetBounds del TForm, que ya permite modificar sus cuatro propiedades top, left, width, height y es una sola llamada. Sí le vería sentido a ExpandirForma si al agrandar el ancho no cupieses en pantalla y entonces modificara su Left para que tuviese el ancho especificado por parámetro.
Las rutinas MinimizarAplicacion y FinalizarAplicacion son más del tipo "Sistema GH" de
Al González, en ese aspecto no entro, ya que le tengo bastante respeto a Al, y a sus conocimientos
; yo al menos no usaría un procedimiento que solo tenga una línea de código.
Si ya estan diseñadas las funciones y las estas utilizando, no cambies el código, pero no te aconsejaría que creases mil y una función, (mira sistema GH antes
)
Saludos