SetWindowRgn Home
SetWindowRgn
Windows Mobile SupportedWindows Embedded CE Supported
8/28/2008

This function sets the window region of a window. The window region determines the area within the window where the system permits drawing.

The system does not display any portion of a window that lies outside of the window region.

Syntax


int SetWindowRgn(
  HWND hWnd, 
  HRGN hRgn, 
  BOOL bRedraw
);
Parameters

hWnd

Handle to the window whose window region is to be set.

hRgn

Handle to a region.

The function sets the window region of the window to this region.

If hRgn is NULL, the function sets the window region to NULL.

bRedraw

Specifies whether the system redraws the window after setting the window region.

If bRedraw is TRUE, the system does so; otherwise, it does not.

Typically, you set bRedraw to TRUE if the window is visible.

Return Value

Nonzero indicates success.

Zero indicates failure.

To get extended error information, call GetLastError.

Remarks

When this function is called, the system sends the WM_WINDOWPOSCHANGING and WM_WINDOWPOSCHANGED messages to the window.

The coordinates of a window's window region are relative to the upper-left corner of the window, not the client area of the window.

After a successful call to SetWindowRgn, the system owns the region specified by the region handle hRgn.

The system does not make a copy of the region. Thus, do not make further function calls with this region handle.

In particular, do not delete this region handle. The system deletes the region handle when it no longer needed.

If you call SetWindowRgn on a window, you cannot later move or resize the window.

If you do, you are left with lost regions on the screen that never repaint and never go away. To resolve this, call SetWindowRgn(NULL) before calling SetWindowPos, and then call SetWindowRgn again with the new region.

To obtain the window region of a window, call the GetWindowRgn function.

Windows Embedded CE does not accept regions on windows that fit exactly into entire screen or greater dimensions.

Requirements

Headerwinuser.h
LibraryWinmgr.lib
Windows Embedded CEWindows CE 2.12 and later
Windows MobileWindows Mobile Version 5.0 and later
See Also

Reference

GetWindowRgn
SetWindowPos

© 2009 Microsoft Corporation. All rights reserved.   Terms of Use | Trademarks | Privacy Statement
Page view tracker
Rate the Lightweight library
x
Lightweight builds on ScriptFree (loband) by adding features you've requested: a SearchBox and default code language selection.
Do you like the SearchBox?
Do you like the tabbed code blocks?
How useful is this topic?
Tell us more.
Thanks
x
You're helping to improve MSDN Online.
Feedback
Switch View
Classic
Lightweight Beta
ScriptFree
Switch View