所有程序都在VIEW.CPP中,如下:
void CDataCollectView::OnDraw(CDC* pDC)
{
    此处就是要请教的画线的部分,不知道代码怎么写比较好
     
    code::
}void CDataCollectView::OnStart() 
{
    通过工具栏按钮命令开启一个定时器,其中CollectDataVProc是回调函数
    TimerID_Vtest = timeSetEvent(Timer_10ms,wAccuracy,(LPTIMECALLBACK)CollectDataVProc,(DWORD)this,TIME_PERIODIC); 
}CollectDataVProc是回调函数如下
void PASCAL CollectDataVProc(UINT wTimerID,UINT msg,DWORD dwUser,DWORD dw1,DWORD dw2)
{
        每次取一个点x,y,如何将这些点在OnDraw(CDC* pDC)画成一条线,好像用MOVETO  LINETO 
        xpoint = float(xlenth)/15000*escapeTime;
        ypoint = (float(ylenth)/110)*(ftemperature);
        CDataCollectView *pView = (CDataCollectView*)(((CMainFrame*)(AfxGetApp()->m_pMainWnd))->GetActiveView());
pView->Invalidate();
}

解决方案 »

  1.   

    补充:xpoint  ypoint 是定义在VIEW.CPP中的全局变量
      

  2.   

    问:不把xpoint和ypoint保存起来,怎么可能绘线呢》
    在说这个问题应该很简单啊。
    记录两个点,moveto   lineto就可以了啊。
      

  3.   

    CDC dc(this);
    dc.ShijinHua();
      

  4.   

    感觉楼主应该是明白的,只是没有去尝试,一条线的两端点已经知道了,也知道用moveto,lineto,直接在ondraw里写代码就是了啊,如果要求不搽出以前绘制的线的话,可以用vector把每条线的端点都保存起来,在ondraw里逐条绘制!
      

  5.   

    楼上的说的好像有道理,可以给点代码吗?“可以用vector把每条线的端点都保存起来,在ondraw里逐条绘制!”
      

  6.   

    在鼠标左键按下的消息中记下起点坐标即moveto的参数,
    在鼠标左键弹起的消息中记下终点坐标即lineto的参数。