| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 453 人关注过本帖
标题:用timer画线,能隔一秒画出一根,隔一秒再出一根,依次类推
只看楼主 加入收藏
小懒889
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-3-25
结帖率:33.33%
收藏
已结贴  问题点数:20 回复次数:3 
用timer画线,能隔一秒画出一根,隔一秒再出一根,依次类推
Private Sub Timer1_Timer()
Timer1.Interval = 100
Timer1.Enabled = True
If linejs = 0 Then
   Call fx(90)     '画第一根线
   linejs = 1
ElseIf linejs = 1 Then
   Call fx(80) '画第二根线
   linejs = 2
ElseIf linejs = 2 Then
   Call fx(70)
   linejs = 3
ElseIf linejs = 3 Then
   Call fx(60)
   linejs = 4
ElseIf linejs = 4 Then
   Call fx(50)
   linejs = 5
ElseIf linejs = 5 Then
   Call fx(40)
   linejs = 6
ElseIf linejs = 6 Then
   Call fx(30)
   linejs = 7
ElseIf linejs = 7 Then
   Call fx(20)
   linejs = 8
ElseIf linejs = 8 Then
   Call fx(10)
End If
End Sub
Private Sub fx(ρ As Long)

Dim x2, y2 As Single

  
       For t = -20 To 65 Step 0.02
           Pq = Pk(t)
           x2 = 622 * Pq * (ρ / 100) / (101325 - Pq * ρ / 100)
           y2 = t + x2 / 2000 * (2500 + 1.84 * t) - x2
           If x2 <= 42 And y2 <= 65 Then
               Picture1.PSet (x2, y2), QBColor(4)
           Else
               Picture1.CurrentX = x2: Picture1.CurrentY = y2 + 1: Picture1.Print ρ; "%"
               Exit For
           End If
         
       Next t


End Sub
我现在这代码只能出现一根线,是为什么呢?
2013-06-15 11:19
Artless
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:4211
专家分:28888
注 册:2009-4-8
收藏
得分:20 
Pk?

无知
2013-06-15 11:57
小懒889
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-3-25
收藏
得分:0 
回复 2楼 Artless
也是我定义的一个函数
2013-06-15 12:55
小懒889
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-3-25
收藏
得分:0 
回复 2楼 Artless
Private Function Pk(t) As Single
    Dim Ti As Single
    Dim c1, c2, c3, c4, c5, c6, c7 As Single                 
    Dim c8, c9, c10, c11, c12, c13 As Single
    c1 = -5674.5369: c2 = 6.3925247: c3 = -0.009677843
    c4 = 0.00000062215701: c5 = 2.0747825E-19: c6 = -9.484024E-13
    c7 = 4.1635019: c8 = -5800.2206: c9 = 1.3914993
    c10 = -0.04860239: c11 = 0.000041764768: c12 = -0.000000014452093
    c13 = 6.5459673
    Ti = 273.15 + t
    If t < 0 Then
       Ln = c1 / Ti + c2 + c3 * Ti + c4 * (Ti ^ 2) + c5 * (Ti ^ 3) + c6 * (Ti ^ 4) + c7 * Log(Ti)
       Pk = Exp(Ln)
    Else
       Ln = c8 / Ti + c9 + c10 * Ti + c11 * (Ti ^ 2) + c12 * (Ti ^ 3) + c13 * Log(Ti)
       Pk = Exp(Ln)
    End If
End Function
2013-06-15 12:56
快速回复:用timer画线,能隔一秒画出一根,隔一秒再出一根,依次类推
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016416 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved