GetClientRect(hWnd.&rect); //Запоминаем размеры рабочей области окна. //Рисование прямоугольника
hBrush - CreateSolidBrush(RGB(0.200.200)); //Создаем сплошную кисть //Макрос RGB(0.200.200) заполняет числами 0.200.200 три байта переменной //типа C0L0RREF
OldBrush - (HBRUSH)SelectObject(hDC.hBrush); //Дескриптор стандартной //кисти, заданной в контексте, сохраняется в переменной OldBrush. а на ее //место заносится дескриптор созданной кисти hBrush. hPen - (HPEN)SelectObject(hDC.CreatePen(PS_DASH.1.(COLORREF)Oxff)): //При создании пера операции создания и занесения в контекст объединены, //это позволяет обойтись без промежуточной переменной (OldPen). Заметим, //что здесь цвет пера задавался непосредственно константой Oxff. Создано //красное перо, рисующее штриховую линию.
xl - rect.left+10;x2 - rect.right/5+Ю: //Задание координат углов
yl - rect.top+10:у2 - rect.bottom/5+10: //и рисование прямоугольника
Rectangle(hDC.xl.yl.x2.y2); //при помощи контекста hDC.
DeleteObject(SelectObject(hDC.OldBrush)); //Восстановление исходного
DeleteObject(SelectObject(hDC.hPen)); //контекста и уничтожение объектов
//Рисование эллипсов
//Создание штрихованной кисти и пера:
hBrush - (HBRUSH)SelectObject(hDC.
CreateHatchBrushCHS DIAGCROSS.RGBC200.0.190))): hPen - ( HPEN ) Sel ectOb ject ( hDC. CreatePen ( PSJOLID. 5. RGB ( 200.200.0 ) ) ) : xl - rect.right/5-5;x2 - 2*rect.right/5; //Для рисования эллипса задаем yl - rect.top+15;y2 - rect.bottom/5+15: //описанный прямоугольник Ellipse(hDC.xl.yl.x2.y2); //и выводим эллипс.
Изменение контекста и скорость рисования
//Создание и занесение в контекст пустой кисти для рисования кольца
hBrush - (HBRUSH)SelectObject(hDC. CreateBrushIndirect(&lb));
hPen - (HPEN)Select0bject(hDC.CreatePen(PS_S0LID.3. RGBC0.255. 0)));
xl - rect.nght/10-5:x2-3*rect.right/10;
yl - rect.top+15;y2=rect.bottom/5+15;
Ellipse(hDC,xl,yl.x2,y2); //Это кольцо.
//Вывод из контекстов и уничтожение нестандартных объектов.
DeleteObject(SelectObject(hDC.hBrush)); //Уничтожаем
DeleteObject(SelectObject(hDC.hPen)); //нестандартные объекты