Содержание материала

Прочие функции

 

function EqualRgn (p1, p2: HRGN): BOOL; stdcall;

Проверяет, являются ли размеры и форма регионов p1 и p2 идентичными

 

function InvertRgn (DC: HDC; p2: HRGN): BOOL; stdcall;

Инвертирует цвета региона p2 на контексте dc

 

function OffsetRgn (RGN: HRGN; XOffset, YOffset: Integer): Integer; stdcall;

Сдвигает регион rgn по осям X и Y на XOffset и YOffset соответственно

 

function SetRectRgn (Rgn: HRgn; X1, Y1, X2, Y2: Integer): BOOL; stdcall;

Конвертирует регион rgn в прямоугольный, заданный четырьмя координатами

 

function GetRgnBox (RGN: HRGN; var p2: TRect): Integer; stdcall;

Возвращает прямоугольник p2, в который вписан указанный регион rgn

 

function RectInRegion (RGN: HRGN; const Rect: TRect): BOOL; stdcall;

Определяет, "влазит" ли пряпоугольник Rect в границы региона rgn

 

function PtInRegion (RGN: HRGN; X, Y: Integer): BOOL; stdcall;

Определяет, входит ли точка (X,Y) в регион rgn

 

function GetRegionData (RGN: HRGN; p2: DWORD; p3: PRgnData): DWORD; stdcall;

Заполняет данными региона rgn буфер PRgnData размером p2, при pRgnData = nil - возвращает размер региона в памяти

 

Каким же образом это безобидное и абстрактное, в общем-то, понятие взаимодействует со вполне реальными элементами управления? Ведь все перечисленные функции служат, по большому счёту, для того, чтобы создать некую замысловатую фигуру и тем или другим способом отрисовать её в чьём-то контексте, DC, а о том, чтобы каким-то образом изменить форму той же кнопки и речи даже нет. Дело здесь в том, что мы пока мельком рассмотрели функции, касающиеся создания и манипуляций регионами. А ещё существуют функции работы с окнами, и вот там-то нам все наши созданные регионы и пригодятся. Поглядим, что это за функции.

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить