Нарисуй и сотри линию - PullRequest
0 голосов
/ 22 мая 2018

У меня есть приложение 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);за стирание, должен ли я использовать какую-то другую опцию?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...