SDI Main Form

I have an app which I am hoping will have a main form similar in appearance to Delphi (ie, a tool bar & menu bar across the top of the screen).  However, if the form is maximized it first enlarges the form to the size of the screen and then shrinks back to the size I set in onResize.

How do I make it stay at the same height even during maximization??  How do I limit the size of the form to X if it is resized using the sides of the window?

Its not a major problem, but it looks pretty dodgey.  Any help would be appreciated.
LVL 6
Stuart_JohnsonAsked:
Who is Participating?
 
erajojConnect With a Mentor Commented:
You can do something like this...
     .
     .
     .
  private
    procedure LimitSize(var Info: TWMGetMinMaxInfo); message WM_GETMINMAXINFO;
  end;
     .
     .
     .
implementation

{$R *.DFM}

procedure TMainForm.LimitSize(var Info: TWMGetMinMaxInfo);
begin
  with Info.MinMaxInfo^.ptMaxTrackSize do begin
    {X := 640 or whatever you want;}
    Y := MyDefinedHeight {or something};
  end;
end;

That should do it!
0
 
Stuart_JohnsonAuthor Commented:
MATE!!!!!  You are a genius!  Thanks a million!  I wasnt expecting a reply back so quickly - worked like a charm!

Just as a tip, can you make mention if a procedure/function/constant requires an external unit such as this one requiring MESSAGES.

Again, thanks mate....

Regards,


Stuart
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.