Export (0) Print
Expand All

AdjustWindowRectEx

Windows Mobile 6.5
A version of this page is also available for
4/8/2010

This function calculates the required size of the rectangle of a window with extended style based on the desired client-rectangle size. The window rectangle can then be passed to the CreateWindowEx function to create a window whose client area is the desired size.


BOOL AdjustWindowRectEx( 
  LPRECT lpRect, 
  DWORD dwStyle, 
  BOOL bMenu,
  DWORD dwExStyle 
);

lpRect

[in, out] Long pointer to a RECT structure that contains the coordinates of the top-left and bottom-right corners of the desired client area. When the function returns, the structure contains the coordinates of the top-left and bottom-right corners of the window to accommodate the desired client area.

dwStyle

[in] Specifies the window styles of the window whose required size is to be calculated.

bMenu

[in] Boolean that specifies whether the window has a menu.

dwExStyle

[in] Specifies the extended style of the window whose required size is to be calculated.

Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Here is source code for the function OomUI_CreateOomWindow, which creates and returns a handle to the Out of Memory Window, calling AdjustWindowRectEx in the process.

HWND 
OomUI_CreateOomWindow (void)
{
  DWORD grfStyle, grfExStyle;
  RECT rc;
  grfStyle = WS_BORDER | WS_POPUP | WS_CAPTION | WS_SYSMENU;
  grfExStyle = WS_EX_NODRAG | WS_EX_CAPTIONOKBTN | WS_EX_WINDOWEDGE;
  SetRect (&rc, 0, 0, CX_WINDOW, 194);
  AdjustWindowRectEx (&rc, grfStyle, FALSE, grfExStyle);
  oomui.hwnd = CreateWindowEx (
  grfExStyle,
  v_szClass,
  v_szTitle,
  grfStyle,
  12, 7, 
  rc.right - rc.left, rc.bottom - rc.top, NULL, NULL,
  s_hinst, NULL);
  ASSERT (oomui.hwnd);
  return oomui.hwnd;
}

The bMenu parameter must be FALSE; menu bars are not supported.

A client rectangle is the smallest rectangle that completely encloses a client area. A window rectangle is the smallest rectangle that completely encloses the window, which includes the client area and the nonclient area.

When an invalid window style is specified in the dwStyle parameter, the WS_POPUP style is assumed and used for the window calculation. For a description of supported window styles, see CreateWindowEx.

The AdjustWindowRectEx function does not add extra space when a menu bar wraps to two or more rows.

Headerwinuser.h
Windows Embedded CEWindows CE 1.0 and later
Windows MobileWindows Mobile Version 5.0 and later

Community Additions

ADD
Show:
© 2014 Microsoft