Using a form as MDIContainer - making clientsize smaller for MDI Childs


I am unsing one form as MDI Container. I have an image on top of my form.

Now I have several other forms as MDIchilds.

If I set one MDIChild to maximize, its head has dissappeared under my Image and the whole window looks very strange. How can I make the clientsize in which the MDIchilds are allowed to move etc smaller? I don't want the MDIChilds in the whole MDIParent Form, just in a part of it, so I can see my image and move the mdichild under the image.

Can I do this !!without!! having to set all corrdinates and methods for each of my MDIchilds?

Thank you very much  
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

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.

Maybe this sample can be useful for you:

Change splitter orientation to horizontal and fill top pane with the image instead of controls. I set MaxButton property in the child form to True and it behaves as needed.
One more: splitter in this sample can be easily converted to fixed (non-resizable). Set MousePointer of picVBar to Default and comment line bDrag = True in picVBar_MouseDown.
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

FirlefanzAuthor Commented:
Okay, thanks for the idea. The only problem is here: When I maximize the MDIchild (I put the maximize box on it) and change the picturebox to horizontal over the wolhe forms width, and afterwards maximize the mdichild, the head (bar at to of the mdichild with minimize icon etc) is again over my banner (here the picturebox) and not under it!!

It is better, but still the mdichilds top-bar is over my banner!
Cannot reproduce this behaviour. What do you mean "change the picturebox to horizontal over the whole forms width". Dynamically?  I assume that it is always horizontal, set in the form designer.
FirlefanzAuthor Commented:
In the sample there are some things to the left, and the mdichild is in the right half.
i changed it so it is in the under half, and the picturebox is above the mdichild.

when you maximize the mdichild then, the mdichildform itself is under the picturebox, but the bar on top
of the mdichildform is above the picturebox, not under it, like it should!

thanks for your interest and suggestions :)
I continue to play with this sample ant here are the results:
1) Remove all controls from FRMMain except: menus, picVar and Status.
2) Set picVar alignment to AlignTop and place it in the top part of the window
3) I added also line control to the top part of AlignTop to see whether some part of it is obscured
4) Remove lines of code which are not compiled
5) Run the sample, open child form and maximize it.

I can see that title bar of the child form is above the picture box, however, picture box is not obscured and may show any image or animation without problems.
I will try something else and will return later.

To Firlefanz:
In VB, you can put a PictureBox on MDIForm to show some picture you want, and need not a "MDI Containter" to act this feature.
FirlefanzAuthor Commented:
@AlexFM: Thanks, this it okay like you told me, the only problem is I want that title bar UNDER the picturebox, then this would be ok! it would be even better if I could turn that title bar off, because I have own icons on the form and I want to hide the title bar. the only problem is that the title bar appears again, when I maximize the mdi child.

@TigerZhao: I know, thank you. I must use mdichilds for my program, this is the way the program has to look like, and I must make it this way. Has nothing to do with the picturebox, I only want to show some banner.
My answer give partial solution of the problem. Howerver, if Firlefanz wants his points back because there is no full solution, I have no objections.

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
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
Visual Basic Classic

From novice to tech pro — start learning today.