Поделиться через


Функция SetWindowRgn (winuser.h)

Функция SetWindowRgn задает область окна. Область окна определяет область в окне, в которой система разрешает рисование. Система не отображает ни одну часть окна, расположенную за пределами области окна

Синтаксис

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

Параметры

[in] hWnd

Дескриптор для окна, область окна которого должна быть задана.

[in] hRgn

Дескриптор области. Функция задает область окна для этой области.

Если hRgn имеет значение NULL, функция задает для области окна значение NULL.

[in] bRedraw

Указывает, будет ли система перерисовывать окно после задания области окна. Если параметр bRedraw имеет значение TRUE, система делает это; В противном случае — нет.

Обычно параметру bRedraw присваивается значение TRUE , если окно отображается.

Возвращаемое значение

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение.

Комментарии

При вызове этой функции система отправляет WM_WINDOWPOSCHANGING и WM_WINDOWPOSCHANGED сообщения в окно.

Координаты области окна относятся к верхнему левому углу окна, а не к клиентской области окна.

Примечание Если макет окна — справа налево (RTL), координаты будут относительно верхнего правого угла окна. См. раздел Макет окна и зеркальное отображение.
 
После успешного вызова SetWindowRgn системе принадлежит регион, указанный дескриптором региона hRgn. Система не делает копию региона. Таким образом, не следует выполнять дальнейшие вызовы функций с этим дескриптором региона. В частности, не удаляйте дескриптор этой области. Система удаляет дескриптор региона, когда он больше не нужен.

Чтобы получить область окна окна, вызовите функцию GetWindowRgn .

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll
Набор API ext-ms-win-ntuser-draw-l1-1-0 (представлено в Windows 8)

См. также раздел

GetWindowRgn

Функции рисования и рисования

Общие сведения о рисовании и рисовании

WM_WINDOWPOSCHANGING

WM_WINDOWPOSCHANGED