Операционные системы. Программирование в операционной среде Windows
52 Например, вызов функции hRedPen = CreatePen(PS_SOLID, 1, RGB(255,О,0)); создает перо толщиной 1 пиксель красного цвета для рисования сплошных линий. Чтобы использовать для рисования созданные перо и кисть, нужно их выбрать в контекст устройства с помощью функции SelectObject(): HGDIOBJ SelectObject ( HDC hdc, HGDIOBJ hobj); Параметр hdc определяет дескриптор контекста устройства, а hobj - дескриптор объекта. Функция возвращает дескриптор предыдущего объекта. Все графические объекты рисуются текупщм пером. Замкнутые графические объекты заполняются цветом и способом, соответствующим текущей кисти. По умолчанию используются белая кисть и черное перо толщиной один пиксель. Созданные перья и кисти необходимо удалять перед завершением программы при обработке сообщения WM DESTROY, вызвав функцию DeleteObject(): BOOL DeleteObject (HGDIOBJ hObj); где hObj - дескриптор удаляемого объекта. Пиже приведены прототипы некоторых графических функций. Первый параметр всех функций определяет дескриптор контекста устройства вывода. Изображение точки COLORREF SetPixel (HDC hdc, int x, int y, COLORREF color) ; Функция SetPixel() устанавливает цвет, заданный параметром color, для точки с координатами х,у. Функция возвращает прежний цвет пикселя. Установка текущей позиции BOOL MoveToEx (HDC hdc, int x, int y, LPPOINT IpCoord); Функция MoveToEx() устанавливает текущую графическую позицию в точку с координатами х,у. Четвертый параметр - это указатель на структуру, в которой возвращаются координаты старой текущей позиции, если он равен NULL, координаты старой текущей позиции не возвращаются. Рисование линии BOOL LineTo (HDC hdc, int x, int y); Функция LineTo() рисует линию от текущей точки до точки с координатами jc,j, после этого текущая позиция устанавливается в точке х,у. Рисование прямоугольника BOOL Rectangle (HDC hdc, int upX, int upY, int lowX, int lowY); Функция Rectangle() рисует прямоугольник, координаты верхнего левого и нижнего правого углов должны быть заданы в параметрах ирХ, upY и lowX, lowY.
Made with FlippingBook
RkJQdWJsaXNoZXIy MTY0OTYy