Solved

GetClientRect() without scrollbar and toolbar area?

Posted on 1997-03-18
3
971 Views
Last Modified: 2013-11-20
I'd like to maximze my ChildWindows (MDI app) during startup in vertical direction with fixed horizontal size. I try to get the y size by a call to AfxGetMainWnd->GetClientRect(), but this size seems to be with tool and statusbar, so parts of my childwindows are occluded.
How do I get the correct size to set my childwindows?
0
Comment
Question by:koenig
  • 2
3 Comments
 
LVL 4

Accepted Solution

by:
mbhakta earned 30 total points
ID: 1300556
There are various ways of doing this. One way is of doing this is as follows :

Use API GetNextWindow() in a recursive loop to enumerate all the child windows under AfxGetMainWnd(). (Alternately, EnumWindows() can also be used). Once, you have the handle get the classname of that window using GetClassName(). If the class name is 'MDIClient' get the Windowrect and you are done.....

0
 

Author Comment

by:koenig
ID: 1300557
sorry, good, not even a close hit.
don't get confused by the term "maximize"! I want do do a Movewindow() with my own coords and size.
question is: how do I get the maximum y size for my childwindows? GetClientRect() of parent window gives my size without tool-, scroll-, and statusbar...
0
 
LVL 4

Expert Comment

by:mbhakta
ID: 1300558
You had a pretty cryptic question and just 30 points, so what more can you expect ? I can't read your mind. Now that you have explained more about your problems here is a solution.

The clientrect you get after using the technique I have explained earlier should be added to the other child window's clientrect's viz. Toolbar, statusbar , scrollbars or menu(if you want). This is the maximum client area of the AfxGetMainWnd(), so the x and y are the maximum sizes your childwindows can fit in.
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
ASCII Non-Printable characters/codes and their HTML equivalents 6 130
EvenOdd challenge 10 125
changeXy challenge 13 87
Unix Command -- Challenging  question 7 95
Introduction: Load and Save to file, Document-View interaction inside the SDI. Continuing from the second article about sudoku.   Open the project in visual studio. From the class view select CSudokuDoc and double click to open the header …
Introduction: Displaying information on the statusbar.   Continuing from the third article about sudoku.   Open the project in visual studio. Status bar – let’s display the timestamp there.  We need to get the timestamp from the document s…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.

792 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question