CreatePolyPolygonRgn
Функция CreatePolyPolygonRgn создает область, состоящую из нескольких прямоугольников. Прямоугольники могут перекрывать друг друга.
HRGN CreatePolyPolygonRgn
(
CONST
POINT
*
lppt
, // указатель на массив точек
CONST
INT
*
lpPolyCounts
, // указатель на массив,
// содержащий количества вершин
int
nCount
, // количество целых в массиве количества вершин
int
fnPolyFillMode
// режим заполнения многоугольника
);
Параметры
lppt
- указатель на массив структур типа
POINT
, которые определяют вершины многоугольников. Многоугольники задаются последовательно. Каждый многоугольник полагается замкнутым, и каждая вершина может быть задана лишь один раз.
lpPolyCounts
- указывает на массив целых, каждое из которых задает количество точек в одном из многоугольников в массиве, на который указывает значение параметра
lppt
.
nCount
- определяет общее количество целых значений в массиве, на который указывает значение параметра
lpPolyCounts
.
fnPolyFillMode
- определяет режим заполнения, используемый для определения того, какие пиксели входят в область. Может принимать одно из следующих значений:
Значение |
Пояснение |
ALTERNATE |
Попеременный режим. Закрашиваются только те фрагменты внутренней области многоугольника, которые получаются путем соединения линий с нечетными номерами (1, 3, 5 и т. д.). Другие фрагменты внутренней области не закрашиваются. |
WINDING |
Сквозной. Windows закрашивает все внутренние области. |
Для дополнительной информации об этих режимах смотрите описание функции SetPolyFillMode .
Возвращаемые значения
В случае успеха возвращается дескриптор области.
В случае неудачи возвращается
NULL
.
См. также
CreatePolygonRgn , DeleteObject , POINT , SelectObject , SetPolyFillMode .