Рейтинговые книги
Читем онлайн Русский справочник по Win32 API - Тарас Сорока

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 21 22 23 24 25 26 27 28 29 ... 34

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 .

CreateRectRgn

Функция CreateRectRgn создает прямоугольную область.

HRGN CreateRectRgn (

int nLeftRect , // x-координата верхнего левого угла области

int nTopRect , // y-координата верхнего левого угла области

int nRightRect , // x-координата правого нижнего угла области

int nBottomRect // y-координата правого нижнего угла области

);

Параметры

nLeftRect - определяет x-координату верхнего левого угла области.

nTopRect - определяет y -координату верхнего левого угла области.

nRightRect - определяет x-координату правого нижнего угла области.

nBottomRect - определяет y- координату правого нижнего угла области.

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

В случае успеха возвращается дескриптор области.

В случае неудачи возвращается NULL.

Комментарии

В область не входят ее правая и нижняя границы.

См. также

CreateRectRgnIndirect, CreateRoundRectRgn, DeleteObject, SelectObject .

CreateRectRgnIndirect

Функция CreateRectRgnIndirect создает прямоугольную область.

HRGN CreateRectRgnIndirect (

CONST RECT * lprc // указатель на прямоугольник

);

Параметры

lprc - указывает на структуру типа RECT , которая содержит координаты верхнего левого и нижнего правого углов прямоугольника, определяющего область.

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

В случае успеха возвращается дескриптор области.

В случае неудачи возвращается NULL .

Комментарии

В область не войдут правая и нижняя стороны прямоугольника.

См. также

CreateRectRgn, CreateRoundRectRgn, DeleteObject, RECT, SelectObject .

CreateRoundRectRgn

Функция CreateRoundRectRgn создает прямоугольную область с закругленными углами.

HRGN CreateRoundRectRgn (

int nLeftRect , // x -координата верхнего левого угла области

int nTopRect , // y -координата верхнего левого угла области

int nRightRect , // x -координата нижнего правого угла области

int nBottomRect , // y -координата нижнего правого угла области

int nWidthEllipse , // ширина эллипса для закругленных углов

int nHeightEllipse // высота эллипса для закругленных углов

);

Параметры

nLeftRect - определяет x -координату верхнего левого угла области.

nTopRect - определяет y - координату верхнего левого угла области.

nRightRect - определяет x -координату нижнего правого угла области.

nBottomRect - определяет y -координату нижнего правого угла области.

nWidthEllipse - определяет ширину эллипса, используемого для создания закругленных углов.

nHeightEllipse - определяет высоту эллипса, используемого для создания закругленных углов.

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

В случае успеха возвращается дескриптор области.

В случае неудачи возвращается NULL .

См. также

CreateRectRgn, CreateRectRgnIndirect, DeleteObject, SelectObject .

EqualRgn

Функция EqualRgn проверяет две указанные области на идентичность. Функция считает области идентичными, если они имеют одинаковые размер и форму.

BOOL EqualRgn (

HRGN hSrcRgn 1 , // дескриптор первой области

HRGN hSrcRgn 2 // дескриптор второй области

);

Параметры

hSrcRgn 1 - идентифицирует первую область.

hSrcRgn 2 - идентифицирует вторую область.

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

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

Если две области не равны, возвращается нуль. Возврат ERROR означает, что, по крайней мере, один из дескрипторов областей был недействительным.

См. также

CreateRectRgn, CreateRectRgnIndirect .

ExtCreateRegion

Функция ExtCreateRegion создает область из указанной области и данных трансформации.

HRGN ExtCreateRegion (

CONST XFORM * lpXform , // указатель на данные трансформации

DWORD nCount , // размер структуры, содержащей данные области

CONST RGNDATA * lpRgnData // указатель на данные области

);

Параметры

lpXform - указатель на структуру типа XFORM , которая определяет трансформацию, выполняемую над областью. Если значение этого параметра равно NULL, используется единичная трансформация.

nCount - определяет число байт, адресуемых значением параметра lpRgnData .

lpRgnData - указывает на структуру типа RGNDATA , которая содержит данные области.

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

В случае успеха возвращается дескриптор области.

В случае неудачи возвращается NULL .

Комментарии

Приложение может извлечь данные для области, вызвав функцию GetRegionData .

Windows 95: Области более не ограничены кучей в 64 КБайт.

Windows 95: Мировые преобразования, который включают в себя сдвиг или вращение, не поддерживаются. Вызов ExtCreateRegion завершится неудачей, если матрица преобразования задает собой что-либо отличное от масштабирования или сдвига области.

См. также

GetRegionData, RGNDATA, XFORM.

FillRgn

Функция FillRgn заполняет область, используя определенную кисть.

BOOL FillRgn (

HDC hdc , // дескриптор контекста устройства

HRGN hrgn , // дескриптор заполняемой области

HBRUSH hbr // дескриптор кисти, используемой для заполнения области

);

Параметры

hdc - идентифицирует контекст устройства.

hrgn - идентифицирует заполняемую область. Предполагается, что координаты области задаются в логических единицах.

hbr - идентифицирует кисть, используемую для заполнения области.

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

В случае успеха возвращается ненулевое значение.

В случае неудачи возвращается нуль.

См. также

CreateBrushIndirect, CreateDIBPatternBrush, CreateHatchBrush, CreatePatternBrush, CreateSolidBrush, PaintRgn .

FrameRgn

Функция FrameRgn рисует рамку вокруг указанной области, используя указанную кисть.

1 ... 21 22 23 24 25 26 27 28 29 ... 34
На этой странице вы можете бесплатно читать книгу Русский справочник по Win32 API - Тарас Сорока бесплатно.
Похожие на Русский справочник по Win32 API - Тарас Сорока книги

Оставить комментарий