CWindow::ResizeClient() Function for CWnd (or derived classes)

With this Function you can resize the window to the specified client area size of your CWnd or derived classes like the CWindow::ResizeClient() function.

Example

You have a dialog based application and the client rect of the dialog depends on the size of a bitmap.

Source Code

BOOL CYourWndOrDialog::ResizeClient (int nWidth, 
                                     int nHeight, 
                                     BOOL bRedraw)
{
 RECT rcWnd;
 GetClientRect (&rcWnd);

 if(nWidth != -1)
  rcWnd.right = nWidth;
 
 if(nHeight != -1)
  rcWnd.bottom = nHeight;

 if(!::AdjustWindowRectEx(&rcWnd, 
                          GetStyle(), 
                          (!(GetStyle() & WS_CHILD) 
 && GetMenu() != NULL)), GetExStyle()))
  return FALSE;

 UINT uFlags = SWP_NOZORDER | SWP_NOMOVE;

 if(!bRedraw)
  uFlags |= SWP_NOREDRAW;

 return SetWindowPos(NULL, 
                     0, 0, 
                     rcWnd.right - rcWnd.left, 
                     rcWnd.bottom - rcWnd.top, 
                     uFlags);
} // CYourWndOrDialog::ResizeClient		
    


Comments

  • about scroll bar

    Posted by Legacy on 12/12/2001 12:00am

    Originally posted by: vivi

    When I resizing the foreview ,the scroll bar doesn't appear.
    How to show the scrool bar when need?

    I dynamic create edit to this view ,but when there aer a lot of edit ,the view 's size must to be enlarge .But i don't konw how to adjust the scroll bar accommodate the view .

    thank u very much for you help .

    Reply
  • But what about a SDI App?

    Posted by Legacy on 11/30/2001 12:00am

    Originally posted by: me

    see page title ;)

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Organizations are increasingly gravitating toward mobile-first application development as they assess the need to revamp their application portfolios to support touch computing and mobility. Consumerization has brought higher expectations for application usability along with the mobile devices themselves. Enterprises are increasingly shifting their new application acquisitions and development efforts toward mobile platforms. With this backdrop, it is natural to expect application platform vendors to invest in …

  • Do you spend a lot of time thinking about your enemies? Attacker attribution - figuring out who's out to get you - is one of the most important things an organization can do to protect itself.  Because you have no hope of defending yourself if you don't understand who the attackers are. Good news? Every organization isn't targeted by all the attackers. Bad news? No one can identify your potential attackers as well as you. Read this graphics-rich threat summary for 2014 to determine who might be your next …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date