我刚开始在大学学习图形学。我遇到了一个问题。我们被告知必须使用缓冲区来使用户看不到更改。我不明白为什么我们必须让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);
任何人都可以为我清除它吗?感谢