Функция GetRandomRgn копирует системный регион отсечения указанного контекста устройства в заданный регион.
Синтаксис
int GetRandomRgn( HDC hdc, // handle to DC HRGN hrgn, // handle to region INT iNum // must be SYSRGN ); |
[in] Дескриптор контекста устройства.
hrgn
[in] Дескриптор региона. Прежде, чем функцию вызывают, этот параметр идентифицирует существующий регион. После возвращения значений функцией, он идентифицирует копию текущего системного региона. Старый регион, идентифицированный hrgn переписывается.
iNum
[in] Этот параметр должен быть SYSRGN.
Если функция завершается успешно, возвращаемое значение равно 1. Если функция завершается ошибкой, возвращаемое значение равно 1. Если регион, который будет извлечен имеет значение ПУСТО (NULL), возвращаемое значение равно 0.
Примечание переводчика: Видимо при ошибке возвращаемое значение равно - (минус) 1, потому что и при ошибке, и успехе получается, по описанию функции, одно и тоже значение. А это не логично. Но в документе Microsoft изложено так и я не могу давать материал по другому
Используя флажок SYSRGN, обращайте внимание на то, что системный регион отсечения не может быть текущим из-за передвижений окна. Тем не менее, в ходе обработки сообщения WM_PAINT можно безопасно извлечь и использовать системный регион отсечения в пределах блока BeginPaint-EndPaint. В этом случае, системный регион - это пересечение региона обновления и текущей видимой области окна. Любое передвижение окна после возврата значения функцией GetRandomRgn и перед вызовом EndPaint приведет к новому сообщению WM_PAINT. Любое другое использование флажка SYSRGN может привести к ошибкам рисования в вашем приложении.
Windows NT/2000/XP: Возвращенный регион находится в экранных координатах.
Windows 95/98/Me: Возвращенный регион находится в координатах окна.
Смотри также
Обзор Отсечение, Функции, используемые отсечением, BeginPaint, EndPaint, ExtSelectClipRgn, GetClipRgn, GetClipBox, GetRegionData, OffsetRgn
Размещение и совместимость GetRandomRgn |
||
К | Windows XP | Да |
л | Windows 2000 Professional | Да |
и | Windows NT Workstation | Да версии 3.1 и старше |
е | Windows Me | Да |
н | Windows 98 | Да |
т | Windows 95 | Да |
С | Windows Server 2003 | Нет |
е | Windows 2000 Server | Да |
р | Windows NT Server | Да |
в | ||
е | ||
р | ||
Используемая библиотека | Gdi32.lib | |
Используемая DLL | - | |
Заголовочный файл | ||
- объявлено в | Wingdi.h | |
- включено в | Windows.h | |
Unicode | Нет | |
Замечания по платформе | Не имеется |