我想实现这个目的,以读得的这个数据为纵坐标,以读这个数据的次数为横坐标,比如第一次读得10、第二次读得11,画曲线坐标为(1,10)(2,11).........
附代码:
Private Sub Timer2_Timer()Dim i As Integer
Dim m As Integer
Dim j As Integer
Dim ss As Integer
Dim s As String
Dim file_Name As String
Dim V As String             m = 1
             i = 3
             nZTUSB.lCode = gain * 4096 + 2 * 256 + usb7360AB * 128 + 0 * 64
             nZTUSB.nCh = i
             Call USB7360AI(nZTUSB)
             Text1(i - 1) = nZTUSB.lData
             Text3.Text = Text1(i - 1)
             N_I = Val(Text4.Text)
             file_Name = V
              Open App.Path & "\" & "测试记录库\" & N_I & ".xls" For Output As #1
              Nn = Val(Text3.Text)
              s = stI + Str(Nn) + vbCrLf
              stI = s
              Print #1, s
              Close #1
              Call drawline
             Command5_Click
             
End Sub
......
     Picture4.ForeColor = &HFF0000
     Picture4.Line (0, 0)-(100, 5000), vbYellow
     Picture4.Line (0, 2)-(100, 5100), vbRed
     Picture4.Line (2, 0)-(100, 4900), vbRed
     
    Picture4.CurrentX = 0
    Picture4.CurrentY = sData(0) Mod 5000
    For k = 1 To 100
    m=Val(Text3.Text)
    Picture4.Line -(k, m)
    Next k
End Sub

解决方案 »

  1.   

    For k = 1 To 100
      m=Val(Text3.Text)
      Picture4.Line -(k, m)
    Next k
    这里的循环速度远远快于timer2的速度,所以你的text3值,也是m的值将没有变化,所以你最多也就能看到一条直线。
      

  2.   

    http://download.csdn.net/source/1987571
      

  3.   

    hi zhao4zhong1:
      我是参照你的材料做的,但是就是不能实现测量时的实时曲线。
      这样也可以每记录一个m值,另外一个变量执行加一也可以。
      我记录的m值,都是保存在excel中的 ,见上面的代码
      我的坐标(k,m1)(k+1,m2)(k+2,m3)........