Función SetWindowRgn (winuser.h)

La función SetWindowRgn establece la región de la ventana de una ventana. La región de la ventana determina el área dentro de la ventana donde el sistema permite dibujar. El sistema no muestra ninguna parte de una ventana que se encuentra fuera de la región de la ventana.

Sintaxis

int SetWindowRgn(
  [in] HWND hWnd,
  [in] HRGN hRgn,
  [in] BOOL bRedraw
);

Parámetros

[in] hWnd

Identificador de la ventana cuya región de ventana se va a establecer.

[in] hRgn

Un identificador de una región. La función establece la región de la ventana de la ventana en esta región.

Si hRgn es NULL, la función establece la región de la ventana en NULL.

[in] bRedraw

Especifica si el sistema vuelve a dibujar la ventana después de establecer la región de la ventana. Si bRedraw es TRUE, el sistema lo hace; de lo contrario, no lo hace.

Normalmente, se establece bRedraw enTRUE si la ventana está visible.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero.

Comentarios

Cuando se llama a esta función, el sistema envía los mensajes WM_WINDOWPOSCHANGING y WM_WINDOWPOSCHANGED a la ventana.

Las coordenadas de la región de ventana de una ventana son relativas a la esquina superior izquierda de la ventana, no al área cliente de la ventana.

Nota Si el diseño de la ventana es de derecha a izquierda (RTL), las coordenadas son relativas a la esquina superior derecha de la ventana. Consulte Diseño y creación de reflejo de ventanas.
 
Después de una llamada correcta a SetWindowRgn, el sistema posee la región especificada por el identificador de región hRgn. El sistema no realiza una copia de la región. Por lo tanto, no debe realizar ninguna llamada de función adicional con este identificador de región. En concreto, no elimine este identificador de región. El sistema elimina el identificador de región cuando ya no es necesario.

Para obtener la región de la ventana de una ventana, llame a la función GetWindowRgn .

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluir Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-draw-l1-1-0 (introducido en Windows 8)

Consulte también

GetWindowRgn

Funciones de dibujo y dibujo

Información general sobre pintura y dibujo

WM_WINDOWPOSCHANGING

WM_WINDOWPOSCHANGED