Резюме и Упражнение
Упражнения
Ответ к упражнениям
////Мой код начинается здесь////
// OnDrawgraphicsButton();
///Создать объект контекста устройства(DC)
CPaintDC dc(this);
//Создать новое перо
CPen MyNewPen;
//MyNewPen.CreatePen(PS_SOLID, 10, RGB(255,0,0));
switch(m_dlg.m_RedRadio)
{
case 0:
MyNewPen.CreatePen(PS_SOLID, 10, RGB(255,0,0));
break;
case 1:
MyNewPen.CreatePen(PS_SOLID, 10, RGB(0,255,0));
break;
case 2:
MyNewPen.CreatePen(PS_SOLID, 10, RGB(0,0,255));
break;
}
//Выбрать перо
CPen* pOriginalPen;
pOriginalPen=dc.SelectObject(&MyNewPen);
// CRect MyRectangle(20, 10, 120,110);
CRect MyRectangle(20, 10, 20+m_Radius*2,10+m_Radius*2);
//Нарисовать круг
dc.Ellipse(&MyRectangle);
//Выбрать первоначальное перо
dc.SelectObject(pOriginalPen);
////Мой код заканчивается здесь////
//...
}
}
void CSetDlg::OnRedRadio()
{
// TODO: Add your control notification handler code here
////Мой код начинается здесь////
UpdateData(TRUE);
////Мой код заканчивается здесь////
}
Резюме
В этой главе показано, как создаются рисующие программы. Вы узнали о событии WM_PAINT и научились связывать код, рисующий графику, с функцией OnPaint. Были использованы различные графические функции. Вы также научились устанавливать таймер и связывать код с событием WM_TIMER, которое генерируется автоматически.Вы закончили седьмой урок!
Вернуться Назад