Hi Howard, on Sat, 12 Apr 2014 18:13:08 +0100, you wrote:
>On 12/04/2014 17:06, Frank Poretzky wrote: >> Is there a way to modify my modal form to get it minimized as well? > >Create your modal form with the main form as its owner, and give it a >unique Name at creation. >In your main form's declaration set up two Application handlers, >OnMinimize and OnRestore (of type TNotifyEvent), and hook them up in >your main form's OnCreate code. >In the OnMinimize and OnRestore handler implementations use >FindComponent (or some other means) to locate your previously named >modal form, and either Hide it or Show it as appropriate. Apart from FindComponent, which makes an application with lots of modal windows very complex, I tried various versions of procedure TFormMain.AppOnRestore( Sender: TObject); var posit : integer; begin for posit := 0 to Screen.FormCount - 1 do begin if Screen.Forms[ posit].WindowState = wsMinimized // if Screen.Forms[ posit].FormState <> [fsFirstShow] then Screen.Forms[ posit].WindowState := wsNormal; // Screen.Forms[ posit].Show; // end; end; with a corresponding AppOnMinimize() procedure. None of them worked well, especially with the modal sub-sub-form scenario described above. Many thanks Frank -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus