我想用WINDOWS API做一个画直线的画图板要求是鼠标按下 开始画 
按着的时候 线会跟着动
放开线出来现在遇到的问题是出来线后 如果一动窗口 所画线会消失
还有按下 松开鼠标左键也会出现问题 如果边移动边送 线也会画不出还有我在MOUSE_MOVE里用Invalidate系统消耗很大 有没更好的办法大致代码如下:
isDrawing Bool量表示按下没
case WM_PAINT:
 
    hdc = BeginPaint(hWnd,&ps);
        GetClientRect(hWnd, &rc); 
     if(isDraw){

     switch(drawState){
         case DRAW_LINE:
    MoveToEx(hdc,startPoint.x,startPoint.y,NULL);
             LineTo(hdc,endPoint.x,endPoint.y);
   break;
         }
    }
        EndPaint(hWnd, &ps); 
    break; case WM_LBUTTONDOWN:
isDraw = true;  //start to draw
GetCursorPos(&startPoint);
ScreenToClient(hWnd,&startPoint);  //get 鼠标位置
endPoint = startPoint;
InvalidateRect(hWnd,NULL,FALSE);
   break; case WM_LBUTTONUP:
GetCursorPos(&endPoint);
ScreenToClient(hWnd,&endPoint);
isDraw = false;
break; case WM_MOUSEMOVE:
if(isDraw){
    switch(drawState)
   {
    case DRAW_LINE:
        GetCursorPos(&endPoint);
        ScreenToClient(hWnd,&endPoint);
    MoveToEx(hdc,startPoint.x,startPoint.y,NULL);
             InvalidateRect(hWnd,NULL,TRUE);
  break;
    }
}
break;