本人现急需一个完整的实曲线显示源代码(什么方面均可),如有哪位仗义相助,感激不尽。

解决方案 »

  1.   

    void CBoView::OnDraw(CDC* pDC)
    {
    CMyPro3Doc* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    // TODO: add draw code here
    CPen CyanPen(PS_SOLID, 1, RGB(128,128,128));
    CPen BluePen(PS_SOLID, 3, RGB( 0, 0, 255 ));
    CPen RedPen(PS_SOLID, 2, RGB( 255, 0, 0 ));
    CPen VioletPen(PS_SOLID, 1,  RGB( 255, 0, 255 ));
        CPen YellowPen(PS_SOLID, 1,  RGB( 255, 255, 0 )); RECT rect;
    GetClientRect(&rect);
    pDC->SetMapMode(MM_TEXT);
    pDC->SetViewportOrg(50,640);
    pDC->SelectObject(BluePen);
    pDC->MoveTo(0,-620);
    pDC->LineTo(0,0);
    pDC->LineTo(950,0);
    pDC->MoveTo(0,-620);          //画箭头
    pDC->LineTo(-3,-600);
    pDC->LineTo(3,-600);
    pDC->LineTo(0,-620);
    pDC->MoveTo(950,0);          //画箭头
    pDC->LineTo(930,-3);
    pDC->LineTo(930,3);
    pDC->LineTo(950,0);
      

  2.   

    pDC->SelectObject(CyanPen);
    for(int i=0;i<=10;i++)
    {
    pDC->MoveTo(i*90,3);
    pDC->LineTo(i*90,-580);
    CTime time = CTime::GetCurrentTime()+CTimeSpan(0,0,0,i)-CTimeSpan(0,0,0,10);
    CString str=time.Format("%H:%M:%S");
    pDC->TextOut(i*90-25,5,str);
    }
    for(i=1;i<15;i++)
    {
    pDC->MoveTo(-3,-40*i);
    pDC->LineTo(910,-40*i);
    CString str1;
    int m=pDoc->SetValue-7;
    str1.Format("%3d",m+i);
    pDC->TextOut(-28,-40*i-8,str1);
    }
    pDC->SelectObject(RedPen);
    pDC->MoveTo(0,-80);
    pDC->LineTo(910,-80);
    pDC->MoveTo(0,-480);
    pDC->LineTo(910,-480);

    float m=pDoc->AveArray[0];
    CString strAve;
    CString  strj;
    strAve.Format("历史平均值为:%6.2f",m/40+pDoc->SetValue-7);
    strj.Format("%5d",pDoc->j);
    pDC->TextOut(800,-600,strAve);
    pDC->TextOut(600,-600,strj);
      

  3.   

    pDC->SelectObject(VioletPen);
    for(i=10;i>0;i--)
    {
    pDC->MoveTo(i*90,(int)(-pDoc->DataArray[10-i]));
    pDC->LineTo((i-1)*90,(int)(-pDoc->DataArray[10-i+1]));
            
    } pDC->SelectObject(RedPen);
    for(i=10;i>0;i--)
    {
    CString str;
    double k=pDoc->DataArray[10-i]/40.0+pDoc->SetValue-7;
    str.Format("%6.2f",k);
    if(k>pDoc->SetValue+5||k<pDoc->SetValue-5)
    pDC->SetTextColor(RGB(255,0,0));
    pDC->TextOut(i*90,(int)(-pDoc->DataArray[10-i]),str);
    pDC->SetTextColor(RGB(0,0,0));

    }
    UpdateData();
    }
      

  4.   

    void CBoView::OnTimer(UINT nIDEvent) 
    {
    // TODO: Add your message handler code here and/or call default
        InvalidateRect( NULL, TRUE );
    UpdateWindow(); 
    CView::OnTimer(nIDEvent);
    }int CBoView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
    {
    if (CView::OnCreate(lpCreateStruct) == -1)
    return -1;

    // TODO: Add your specialized creation code here    SetTimer(0,1000,NULL); return 0;
    }