Pues a mi me evita el tener que escribir:
Código Delphi
[-]frmVentas := TfrmVentas.create(Application);
if frmVentas.Showmodal = mrOk then
Hacer_Algo
else
Hacer_Otra_Cosa
Simplemente digo
MostrarForma(Tfrmventas);
Y si necesito saber si el usuario presiono Ok o Cancelar
le digo
Código Delphi
[-]if ShowForm(tfrmOtraForma) then
....
Imaginate cuantas lineas me ahorro en una aplicación con muchas formas.
Tambien tengo este otro procedimiento que me sirve para aplicaciones MDI:
Código Delphi
[-]Procedure ShowFormMDI(TfrmClass: TFormClass;bMultiInstace : boolean);
var
i : SmallInt;
F : TForm;
begin
if not bMultiInstace then
for i := Application.MainForm.MDIChildCount - 1 downto 0 do
begin
F := Application.MainForm.MDIChildren[i];
if F.ClassType = TfrmClass then
begin
if F.WindowState = wsMinimized then
F.WindowState := wsNormal;
F.BringToFront;
Exit;
end;
end;
with TfrmClass.Create(Application) do
Show;
end;
Crea la forma y la muestra, y si ya existe y permito multiples instancias, la muestra.
Saludos.