我有下一个问题
我有基类"Shape",它包含虚函数draw(HWND),我有包含相同功能的子类"Line" draw(hwnd).
当我画线时WM_MOUSEMOVE,一切都好,但是当我最小化或改变窗口大小时,我的线条会消失
我需要做什么?
我有一个指向基类向量ff的向量; 形状*f;
case WM_LBUTTONDOWN:
{
IsDrawing = TRUE;
StartX = LOWORD(lParam);
StartY = HIWORD(lParam);
EndX = LOWORD(lParam);
EndY = HIWORD(lParam);
switch(iShape)
{
case LINE:
f=new Line();
break;
case RECTANGLE:
f=new MyRectangle();
break;
}
f->SetBrushWidth(5);
f->SetColor(RGB(255,0,0));
f->SetStartCoord(StartX,StartY);
f->SetEndCoord(EndX,EndY);
f->SetMode(1);
f->draw(hWnd);
break;
}
case WM_MOUSEMOVE:
if( IsDrawing == TRUE )
{
f->SetEndCoord(EndX,EndY);
f->SetMode(2);
f->draw(hWnd);
EndX = LOWORD(lParam);
EndY = HIWORD(lParam);
f->SetEndCoord(EndX,EndY);
f->SetMode(2);
f->draw(hWnd);
}
break;
case WM_LBUTTONUP:
EndX = LOWORD(lParam);
EndY = …Run Code Online (Sandbox Code Playgroud)