图形InvalidateRect,缓冲区

时间:2015-03-10 17:59:46

标签: graphics buffer invalidation

我刚开始在大学学习图形学。我遇到了一个问题。我们被告知必须使用缓冲区来使用户看不到更改。我不明白为什么我们必须让InvalidateRect(hWnd, NULL, FALSE);最后一个参数为false(我知道这意味着你将保留之前绘制的元素 - 而不是它),在WM_MOUSEMOVE中。

还有一件事。我运行了一个通过拖放绘制矩形的简单示例,在添加缓冲区之前它似乎工作正常。我添加了缓冲区,在更改InvalidateRect的参数之前,它会在我拖放时闪烁。

Imybrush = CreateSolidBrush(RGB(210, 210, 120));
        SelectObject(hdcBack, mybrush);
        mypen = CreatePen(PS_SOLID, 1, RGB(144, 1, 0));
        SelectObject(hdcBack, mypen);
        Rectangle(hdcBack, x1,y1,x2,y2);

任何人都可以为我清除它吗?感谢

0 个答案:

没有答案