Me disculpan apreciados compañeros, pero en mi humilde conocimiento al respecto me parecen que han estado escribiendo código -que muy bien puede servir- no es el más adecuado a mi parecer.
El código original propuesto por
nelostanley es el que devería de seguirse.
Acá mi sugerencia:
Código Delphi
[-]
Procedure TMainForm.CreateOrRestoreForm(aForm : TForm);
if not Assigned(aForm) Then begin
aForm := TFormClass(aForm).Create(Application);
aForm.Show;
end
else begin
if aForm.WindowState = wsMinimized then
aForm.WindowState := wsNormal;
aForm.BringToFront;
end;[FONT=verdana,geneva,lucida,'lucida grande',arial,helvetica,sans-serif]
end;
Espero sirva de algo. Saludo.
[/font]