每当我按下按钮时,我都会绘制一个多边形。
我想在再次按下按钮时重新绘制多边形,但是当我按下它时,它只是绘制另一个多边形而不擦除另一个多边形:
//header
#define CREATETRIANGLE 1
//WM_COMMAND
case 2:
PAINTPROCEDURE = CREATETRIANGLE;
InvalidateRect(hwnd, NULL, TRUE);
break;
//WM_PAINT
case WM_PAINT:
switch(PAINTPROCEDURE){
case 0:{
hdc = BeginPaint(hwnd, &ps);
EndPaint(hwnd,&ps);
}
break;
case 1:
RedrawWindow(hwnd, &rect, NULL, RDW_NOCHILDREN); //I tried this function, but it did nothing
TriangleDC = BeginPaint(hwnd, &tps);
SelectPen(TriangleDC, CreatePen(PS_SOLID, 2, RGB(256,256,256)));
SelectBrush(TriangleDC, CreateSolidBrush(RGB(0,192,192)));
{
POINT vertices[] = {{baseX,baseY}, {(baseX-(triangle.sideB)),baseY}, {baseX,(baseY-triangle.sideC)}};
Polygon(TriangleDC, vertices, 3);
}
EndPaint(hwnd,&ps);
PAINTPROCEDURE = 0;
break;
我也试图让多边形超出其范围,但它也没有做任何事情。