MDI Programming

Need to find out a couple of things regarding MDI applications.

1) I have a Main Screen that is set to be the MDIForm (parent) but it has a notebook and grid on it...So everytime I call a child screen it ends up behind these components....Is there anyway to get it to appear in front...I've tried everything witht the BringtoFront routine and putting everything on a panel...but it doesn't seem to come to the front.......Any ideas/help???

2) If I can't have the components on the main screen is there anyway I can direct where a screen will go when minimized...Meaning not just to the bottom of the Parent screen or application screen???

3) Anyway to get the title bar on a form to disappear???

Thanks very much....
GGriffithAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

RadlerCommented:
Alternatives:

- Put all components at another MDI-Child window
- When another MDI is created make this MainForm components not visible.

T++, Radler.
0
RadlerCommented:
I forgeten to say the refered MDI-Child must be allways maximized to make the desired effect.

T++, Radler.
0
GGriffithAuthor Commented:
Okay I'll try it and let you know...

Any ideas on the other two questions???
0
Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

RadlerCommented:
Hi again;

To a title bar desapear set the window border to bsnone.
About the second question, sorry but I dont understood.

T++, Radler.
0
ptmcompCommented:
There is a statement of Microsoft that they wont support MDI in further OS versions. We have to implement the MDI behaviour using the SDI technologie (like Office2000, Delphi...). #:-{

Regards, ptm.
0
RadlerCommented:
Hi ptmcomp;

We'll happy in follow this article, where find it ?

T++, Radler.
0
GGriffithAuthor Commented:
One more question, I did what you suggested taking the components off the main screen and putting them on to a seperate child screen which always comes up maximized.  The only problem with that is screens called after this come up maximized also...Is there a way to allow the subsequent screens to come up in their normal size??? I tried setting the screen sizes manually, but when I did that the new screen came out the size I wanted, but the maximized screen that was intially created then went to that size....Anyway to avoid all of this????

Thank you very much for you help...
0
RadlerCommented:
Try put at OnCreate of all the other forms

begin
  Self.State:=wsNormal;
  Application.ProcessMessages;
end;
0
GGriffithAuthor Commented:
Okay one last question then I'll stop bothering you....

Is there anyway to lock a screen in its place....Meaning once it comes up and is displayed I don't want the user to click on the title bar and move the screen/form....

Thanks again....
0
RadlerCommented:
overwrite the message handlers to this windows events

MyForm=Class( TForm )
private
procedure TCustomForm.WMSysCommand(var Message: TWMSysCommand);
procedure WMWindowPosChanged(var Message: TWMWindowPosChanged); message WM_WINDOWPOSCHANGED;
end;

and validate if the require movemment is allowed.

T++, Radler.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
GGriffithAuthor Commented:
Thank you very much for all your help........
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Delphi

From novice to tech pro — start learning today.