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

  • Packaged application development teams frequently operate with limited testing environments due to time and labor constraints. By virtualizing the entire application stack, packaged application development teams can deliver business results faster, at higher quality, and with lower risk.

  • As mobile devices have pushed their way into the enterprise, they have brought cloud apps along with them. This app explosion means account passwords are multiplying, which exposes corporate data and leads to help desk calls from frustrated users. This paper will discover how IT can improve user productivity, gain visibility and control over SaaS and mobile apps, and stop password sprawl. Download this white paper to learn: How you can leverage your existing AD to manage app access. Key capabilities to …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds