Я пытаюсь изучить MFC из книги: MV C++ Windows Application по примеру (2008). Существует пример приложения. где я могу рисовать кольца наполненных ведьм выбрали цвет:MFC: Ring - без изменения цвета
void CRingView::OnDraw(CDC* pDC)
{
CRingDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
PointArray& pointArray = pDoc->GetPointArray();
ColorArray& colorArray = pDoc->GetColorArray();
int iSize = static_cast<int>(pointArray.GetSize());
for (int iIndex = 0; iIndex < iSize; iIndex++)
{
CPoint point = pointArray[iIndex];
COLORREF color = colorArray[iIndex];
CPen pen(PS_SOLID, 0, BLACK);
CBrush brush(color);
pDC->Ellipse(point.x - RADIUS, point.y - RADIUS, point.x + RADIUS, point.y + RADIUS);
CPen* pOldPen = pDC->SelectObject(&pen);
CBrush* pOldBrush = pDC->SelectObject(&brush);
}
}
но нет никакого изменения цвета (всегда белого, как BG), даже если я делаю:
CBrush brush(BLACK);
Так вопрос: Что я делаю неправильно? Я использую Visual Studio 2013, но с новым проектом не должно быть ошибок совместимости. И черныйотсутствует:
static const COLORREF BLACK = RGB(0, 0, 0);
Попробуйте выбрать ручку и кисть, прежде чем делать рисунок эллипса. – acraig5075
@ acraig5075 Спасибо, что он работал с: «Кистью кисти (цветной); \t \t pDC-> SelectObject (brush); \t \t pDC-> Ellipse ... '- вы объявляете это как ответ, или мы оставляем его как есть? – mielu
Рад, что это сработало. Я добавил комментарий в качестве ответа, чтобы у вас не было ответов на ваши вопросы без ответа. – acraig5075