Работа с прямоугольниками
Простейшим средством, задающим границу области вывода, является прямоугольник. Функции отображения прямоугольных областей используют указатель на структуру rect типа RECT (прямоугольник), имеющую поля: left, top, right, bottom, заданные в логических единицах.
Функция FillRect (hdc, &rect, hBrush); закрашивает прямоугольник (не включая правую и нижнюю координаты) заданной кистью.
Функция FrameRect (hdc, &rect, hBrush); использует кисть для рисования прямоугольной рамки, но не закрашивает внутреннюю область.
Функция InvertRect (hdc, &rect); инвертирует все пиксели в прямоугольнике, устанавливая единичные биты в ноль, а нулевые – в единицу, т.е. переводит белую область в черную, черную – в белую (зеленую – в фиолетовую).
Windows содержит функции, позволяющие легко манипулировать со структурами типа RECT:
– установка всех полей структуры RECT в заданные значения:
SetRect (&rect, xLeft, yTop, xRight, yBottom);
– перемещение на заданное число координат вдоль осей x и y:
OffsetRect (&rect, x, y);
– увеличение или уменьшение размеров прямоугольника:
InflateRect (&rect, x, y);
– установка полей структуры прямоугольника в ноль:
SetRectEmpty (&rect);
– копирование одного прямоугольника в другой:
CopyRect (&DestRect, &SrcRect);
– пересечение двух прямоугольников:
IntersectRect (&DestRect, &SrcRect1, &SrcRect2);
– объединение двух прямоугольников:
UnionRect (&DestRect, &SrcRect1, &SrcRect2);
– определение, является ли прямоугольник пустым:
bEmpty = IsRectEmpty (&rect);
– определение, содержится ли точка внутри прямоугольника:
bInRect = PtInRect (&rect, point);
Дата добавления: 2015-09-11; просмотров: 623;