У меня есть приложение mfc mdi.
У меня черная цветная линия.
При нажатии кнопки рисования я должен нарисовать красную цветную линию поверх задней цветовой линии.
При нажатии на кнопку удаления, я должен стереть красную цветную линию, но черная цветная линия должна быть видна.
Я могу нарисовать красную цветную линию, но я не знаю, как стереть красную цветную линию?
Я использую код ниже.При стирании линии я получаю вид линии зеленого цвета, а линия черного цвета также стирается.
void CScrRulerView::DrawLine(CDC* pDC, CRect rulerRect, bool bDraw)
{
int nPrevMode;
CPen pen(PS_SOLID,1,RGB(255,0,0));
CPen* pPenOld = pDC->SelectObject (&pen);
if(bDraw)
nPrevMode = pDC->SetROP2(R2_COPYPEN);
else
nPrevMode = pDC->SetROP2(R2_NOT);
pDC->MoveTo(rulerRect.left,rulerRect.top);
pDC->LineTo(rulerRect.right,rulerRect.bottom);
pDC->SelectObject(pPenOld);
pDC->SetROP2(nPrevMode);
}
Я использую SetROP2 (R2_NOT);за стирание, должен ли я использовать какую-то другую опцию?