航空仪表模拟

        这是我的工控软件系列博客的第二篇,本篇博客中的项目主要是完成对航空仪表进行虚拟测试,此项目只是航空仪表仿真测试软件的一部分,原项目中相关的数据都从工控机的RS232串口传入,然后进行相关的数据分析并在界面上显示各个仪表的实时状态,查看仪表是否能正常工作。但考虑到园友无条件从串口获取正确的实时数据,因此本博客中的工程只对航空仪表的界面进行模拟,这和实际的项目是有很大区别的。 

        本博客因为对原项目进行了大量精简(其实原项目中的代码也就是在一个定时器内处理串口传来的实时数据,然后分析后在界面上显示),因此主要的任务还是界面的绘制上,下面是相关的运行效果图,感兴趣的朋友可以下载源文件和可执行程序运行看看:

        本工程的源代码是用VB写的,感兴趣的园友可以下载源代码运行看看,这里不再单独对源代码进行说明

ExpandedBlockStart.gif 相关源代码
Const  pi  =   3.14159265358979
Dim  a1  As   Long
Dim  a2  As   Long   '
Dim  a3  As   Long   '
Dim  a4  As   Long   '
Dim  a5  As   Long   '
Dim  sk1  As   Long   '
Dim  b  As   Long
Dim  a6  As   Long
Dim  a7  As   Long
Dim  a8  As   Long
Dim  a9  As   Long
Dim  a10  As   Long
Dim  a11  As   Long
Dim  a12  As   Long
Private  s  As   Integer   ' 声明秒
Private  m  As   Integer   ' 声明分
Private  h  As   Integer   ' 声明小时
Private  d  As   Integer   ' 声明日
   Private  s2  As   Integer   ' 声明表
   Private  s3  As   Integer   ' 声明秒
   Dim  i, Angle
Option   Explicit
Private  sf  As   Integer    ' 声明秒
Private  s1  As   Integer    ' 声明秒
Private   Function  DtoR(x)
DtoR 
=  x  *  ( 3.14159265358979   /   180 )
End Function

Private   Sub  Form_Load()  ' Graph1
Label1.ToolTipText  =   " 点击此处运行程序  "

Timer7.Enabled 
=   True
Picture4_Click
Picture1.Visible 
=   True
Picture5_Click
Picture1_Click
Picture6_Click
End Sub
Private   Sub  Label1_Click()
If  Label1  =   " 飞行启动 "   Then
Label1.ToolTipText 
=   " 点击此处关闭程序 "
 Label1 
=   " 金杰设计 "
 Timer1.Enabled 
=   True
 Timer4.Enabled 
=   True
 Label28 
=  Label26
 Timer7.Enabled 
=   True
 Timer3.Enabled 
=   True
Else
If  Label1  =   " 金杰设计 "   Then
Timer1.Enabled 
=   False
Timer2.Enabled 
=   False
Timer4.Enabled 
=   False

Unload 
Me
End   If
End   If

Label47 
=   " 0 "   &  vbCrLf  &   " 1 "   &  vbCrLf  &   " 2 "   &  vbCrLf  &   " 3 "   &  vbCrLf  &   " 4 "   &  vbCrLf  &   " 5 "   &  vbCrLf  &   " 6 "   &  vbCrLf  &   " 7 "   &  vbCrLf  &   " 8 "   &  vbCrLf  &   " 9 "   &  vbCrLf
Label48 
=   " 0 "   &  vbCrLf  &   " 1 "   &  vbCrLf  &   " 2 "   &  vbCrLf  &   " 3 "   &  vbCrLf  &   " 4 "   &  vbCrLf  &   " 5 "   &  vbCrLf  &   " 6 "   &  vbCrLf  &   " 7 "   &  vbCrLf  &   " 8 "   &  vbCrLf  &   " 9 "   &  vbCrLf
Label14 
=   " 0 "   &  vbCrLf  &   " 1 "   &  vbCrLf  &   " 2 "   &  vbCrLf  &   " 3 "   &  vbCrLf  &   " 4 "   &  vbCrLf  &   " 5 "   &  vbCrLf  &   " 6 "   &  vbCrLf  &   " 7 "   &  vbCrLf  &   " 8 "   &  vbCrLf  &   " 9 "   &  vbCrLf
Label15 
=   " 0 "   &  vbCrLf  &   " 1 "   &  vbCrLf  &   " 2 "   &  vbCrLf  &   " 3 "   &  vbCrLf  &   " 4 "   &  vbCrLf  &   " 5 "   &  vbCrLf  &   " 6 "   &  vbCrLf  &   " 7 "   &  vbCrLf  &   " 8 "   &  vbCrLf  &   " 9 "   &  vbCrLf

End Sub

 

Private   Sub  Picture1_Click()
Dim  i, Angle
Static  flag  As   Boolean
If  flag  =   False   Then
flag 
=   True
For  i  =   0   To   72
If  i  >   0   Then  Load Line181(i)
Line181(i).Visible 
=   True
Line181(i).BorderWidth 
=   2
Line181(i).BorderColor 
=   RGB ( 255 255 0 )      ' 设置LINE的精细和颜色
Next  i
For  i  =   0   To   72
Picture1.Scale (
- 1 1 ) - ( 1 - 1 )
' Picture1.Circle (-1, 1), 30 '可删除
'
Picture1.FillColor = RGB(250, 0, 0)
Angle  =  i  *   2   *   Atn ( 1 /   18   ' 画标点
Line181(i).X1  =   0.98   *   Cos (Angle)
Line181(i).Y1 
=   0.98   *   Sin (Angle)


Line181(
72 ).BorderWidth  =   4   ' 设置特殊角线宽
Line181( 63 ).BorderWidth  =   4
Line181(
54 ).BorderWidth  =   4
Line181(
45 ).BorderWidth  =   4
Line181(
36 ).BorderWidth  =   4
Line181(
27 ).BorderWidth  =   4
Line181(
18 ).BorderWidth  =   4
Line181(
9 ).BorderWidth  =   4   ' 设置特殊角线宽

Line181(
72 ).BorderColor  =   RGB ( 255 0 0 ' 设置90度的颜色
Line181( 63 ).BorderColor  =   RGB ( 255 0 0 ' 设置225度的颜色
Line181( 54 ).BorderColor  =   RGB ( 255 0 0 ' 设置180度的颜色
Line181( 45 ).BorderColor  =   RGB ( 255 0 0 ' 设置-225度的颜色
Line181( 36 ).BorderColor  =   RGB ( 255 0 0 ' 设置-90度的颜色
Line181( 27 ).BorderColor  =   RGB ( 255 0 0 ' 设置0度的颜色
Line181( 18 ).BorderColor  =   RGB ( 255 0 0 ' 设置0度的颜色
Line181( 9 ).BorderColor  =   RGB ( 255 0 0 ' 设置45度的颜色

Line181(i).X2 
=   Cos (Angle)
Line181(i).Y2 
=   Sin (Angle)
Next  i
=   15

 
End   If
End Sub

Private   Sub  Picture4_Click()  ' 时钟

s1 
=   0
=   0
=   0
=   0
Dim  i, Angle
Static  flag  As   Boolean
If  flag  =   False   Then
flag 
=   True
For  i  =   0   To   65
If  i  >   0   Then  Load Line183(i)
Line183(i).Visible 
=   True
Line183(i).BorderWidth 
=   2
Line183(i).BorderColor 
=   RGB ( 255 255 0 ' 设置LINE的精细和颜色
Next  i
End   If
For  i  =   0   To   65
Picture4.Scale (
- 1 1 ) - ( 1 - 1 )
Picture4.Circle (
- 1 1 ),  30
Angle 
=  i  *   2   *   Atn ( 1 /   15
Line183(i).X1 
=   0.99   *   Cos (Angle)   ' 设置刻度线长
Line183(i).Y1  =   0.99   *   Sin (Angle)  ' 设置刻度线长
Line183( 0 ).BorderWidth  =   3   ' 设置12,15,18,21的线宽
Line183( 5 ).BorderWidth  =   3
Line183(
10 ).BorderWidth  =   3
Line183(
15 ).BorderWidth  =   3
Line183(
20 ).BorderWidth  =   3   ' 设置12,15,18,21的线宽
Line183( 25 ).BorderWidth  =   3
Line183(
30 ).BorderWidth  =   3
Line183(
35 ).BorderWidth  =   3
Line183(
40 ).BorderWidth  =   3   ' 设置12,15,18,21的线宽
Line183( 45 ).BorderWidth  =   3
Line183(
50 ).BorderWidth  =   3
Line183(
55 ).BorderWidth  =   3
Line183(
0 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line183( 5 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
10 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
15 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
20 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line183( 25 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
30 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
35 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
40 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line183( 45 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
50 ).BorderColor  =   RGB ( 255 0 0 )
Line183(
55 ).BorderColor  =   RGB ( 255 0 0 )
Line183(i).X2 
=   Cos (Angle)
Line183(i).Y2 
=   Sin (Angle)
Next  i
End Sub

 

 

Private   Sub  Picture5_Click()
Dim  i, Angle
Static  flag  As   Boolean
If  flag  =   False   Then
flag 
=   True
For  i  =   0   To   23
If  i  >   0   Then  Load Line160(i)
Line160(i).Visible 
=   True
Line160(i).BorderWidth 
=   2
Line160(i).BorderColor 
=   RGB ( 0 0 0 ' 设置LINE的精细和颜色
Next  i
For  i  =   0   To   23
Picture5.Scale (
- 1 1 ) - ( 1 - 1 )
Picture5.Circle (
- 1 1 ),  30
Picture5.FillColor 
=   RGB ( 250 0 0 )
Angle 
=  i  *   2   *   Atn ( 1 /   5
Line160(i).X1 
=   0.95   *   Cos (Angle)
Line160(i).Y1 
=   0.95   *   Sin (Angle)
Line160(
12 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line160( 11 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line160( 10 ).BorderColor  =   RGB ( 255 0 0 )   ' 设置12,15,18,21的颜色
Line160( 9 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line160( 8 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line160( 7 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line160( 6 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line160( 5 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line160( 4 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色

 

Line160(
3 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line160( 2 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line160( 1 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色

Line160(
18 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line160( 19 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色

Line160(
20 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色

Line160(i).X2 
=   Cos (Angle)
Line160(i).Y2 
=   Sin (Angle)
Next  i
=   15
 
End   If

End Sub

Private   Sub  Picture6_Click()
Dim  i, Angle
Static  flag  As   Boolean
If  flag  =   False   Then
flag 
=   True
For  i  =   0   To   23
If  i  >   0   Then  Load Line162(i)
Line162(i).Visible 
=   True
Line162(i).BorderWidth 
=   2
Line162(i).BorderColor 
=   RGB ( 0 0 0 ' 设置LINE的精细和颜色
Next  i
For  i  =   0   To   23
Picture6.Scale (
- 1 1 ) - ( 1 - 1 )
Picture6.Circle (
- 1 1 ),  30
Picture6.FillColor 
=   RGB ( 250 0 0 )
Angle 
=  i  *   2   *   Atn ( 1 /   5
Line162(i).X1 
=   0.95   *   Cos (Angle)
Line162(i).Y1 
=   0.95   *   Sin (Angle)
Line162(
12 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line162( 11 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line162( 10 ).BorderColor  =   RGB ( 0 255 0 )   ' 设置12,15,18,21的颜色
Line162( 9 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line162( 8 ).BorderColor  =   RGB ( 0 255 0 ' 设置12,15,18,21的颜色
Line162( 7 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line162( 6 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line162( 5 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line162( 4 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line162( 3 ).BorderColor  =   RGB ( 255 255 0 ' 设置12,15,18,21的颜色
Line162( 2 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line162( 1 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色

Line162(
18 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色
Line162( 19 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色

Line162(
20 ).BorderColor  =   RGB ( 255 0 0 ' 设置12,15,18,21的颜色

Line162(i).X2 
=   Cos (Angle)
Line162(i).Y2 
=   Sin (Angle)
Next  i
=   15
 
End   If
End Sub

Private   Sub  Timer2_Timer()  ' 时钟

Label26 
=  Time

=  s  +   1   ' 飞行时间
If  s  >=   60   Then
=   0   ' 重新计算秒
=  m  +   1   ' 逢秒为60则分钟加1
If  m  >=   60   Then
=   0   ' 重新计算分
=  h  +   1   ' 逢分钟为60则小时加1
If  h  >=   24   Then
=   0   ' 重新计算小时
=  d  +   1   ' 逢24小时则天数加1
End   If
End   If
End   If
Label31 
=  h  &   " "   &  m  &   " "   &  s  &   " "


Const  H1  =   61   ' 时钟
Const  M1  =   62
Const  s1  =   63
Dim  Angle
Static  LS
If   Second (Now)  =  LS  Then   Exit Sub
LS 
=   Second (Now)
Angle 
=   0.5236   *  ( 75   -   Second (Now)  /   5 ' 设置秒针
Line183(s1).BorderColor  =   RGB ( 255 0 0 )
Line183(s1).BorderWidth 
=   1
Line183(s1).X1 
=   0   -   0.18   *   Cos (Angle)
Line183(s1).Y1 
=   0   -   0.18   *   Sin (Angle)
Line183(s1).X2 
=   0.995   *   Cos (Angle)  ' 设置秒针线长
Line183(s1).Y2  =   0.995   *   Sin (Angle)  ' 设置秒针线长
Angle  =   0.1047   *  ( 75   -  ( Minute (Now)  +   Second (Now)  /   60 ))  ' 设置分针
Line183(M1).BorderColor  =   & HF735AE
Line183(M1).BorderWidth 
=   2
Line183(M1).X1 
=   0   -   0.18   *   Cos (Angle)
Line183(M1).Y1 
=   0   -   0.18   *   Sin (Angle)
Line183(M1).X2 
=   0.95   *   Cos (Angle)
Line183(M1).Y2 
=   0.95   *   Sin (Angle)
Angle 
=   0.5236   *  ( 15   -  ( Hour (Now)  +   Minute (Now)  /   60 ))  ' 设置时针
Line183(H1).BorderColor  =   RGB ( 0 255 255 )
Line183(H1).BorderWidth 
=   3
Line183(H1).X1 
=   0   -   0.18   *   Cos (Angle)
Line183(H1).Y1 
=   0   -   0.18   *   Sin (Angle)
Line183(H1).X2 
=   0.8   *   Cos (Angle)
Line183(H1).Y2 
=   0.8   *   Sin (Angle)

 


End Sub

Private   Sub  Timer1_Timer()  ' 扫描
Static  sum  As   Long
sum 
=  sum  +   1
Const  s  =   15   ' 时钟
'
Label9 = 74.47最小
'
Label9 = 76.97中间值
'
Label9 = 79.48最大
         Static  q  As   Long
           q 
=  q  +   1
           Label9 
=   76.97   +  q  /   100
        
If  Label9  >   79.18   Then
     
End   If
          
If  Label9  <   74.77   Then
     
End   If
           
Angle 
=   0.5236   *  ( 360   -   Second (Now)  /   5 )
Line181(s2).BorderColor 
=   RGB ( 0 255 0 )
Line181(s2).BorderWidth 
=   2
Line181(s2).X1 
=   0
Line181(s2).Y1 
=   0
Line181(s2).X2 
=   - Cos (Label9)
Line181(s2).Y2 
=   Sin (Label9)
 
Exit Sub
End Sub

Private   Sub  Timer3_Timer()
a3 
=  a3  -   10
a2 
=  a2  -   10
a4 
=  a4  -   10   /   10
a5 
=  a5  -   10   /   10
Label47.Top 
=  a3
Label48.Top 
=  a2
If  a3  =   - 3930   Then
Label48.Top 
=   400
a2 
=   400
End   If
If  a2  =   - 3930   Then
Label47.Top 
=   400
a3 
=   400
End   If
Label14.Top 
=   - 75   +  a4
Label15.Top 
=   - 75   +  a5
If  a4  =   - 3930   Then
Label15.Top 
=   400
a5 
=   400
End   If
If  a5  =   - 3930   Then
Label14.Top 
=   400
a4 
=   400
End   If
If  a4  =   - 4330   Then
a10 
=  a10  +   1
Label10 
=  a10
End   If
If  a5  =   - 4330   Then
a10 
=  a10  +   1
Label10 
=  a10
End   If
If  a9  =   10   Then
a9 
=   0
Label10 
=   " 0 "
End   If
If  a10  =   10   Then
a10 
=   0
Label10 
=   " 0 "
a11 
=  a11  +   1
Label13 
=  a11
End   If
If  a11  =   10   Then
a11 
=   0
Label13 
=   " 0 "
a12 
=  a12  +   1
Label11 
=  a11
End   If
If  a12  =   10   Then
a12 
=   0
Label11 
=   " 0 "
End   If
End Sub

Private   Sub  Timer4_Timer()

 

' Label99 = 74.78最小
'
Label99 = 76.97中间值
'
Label99 = 79.18最大
         Static  q  As   Long
           q 
=  q  +   1
           Label33 
=  q
           Label99 
=   79.18   -  q  /   90
Label6 
=  q
   Label6 
=  Label6  /   4
    Label7 
=   " 100 "   -  Label6  &   " % "   &  vbCrLf
 Label4 
=   " 剩余燃油 "   &  vbCrLf  &  Label7  &  vbCrLf
Angle 
=   0.5236   *  ( 360   -   Second (Now)  /   5 )
Line160(s2).BorderColor 
=   & HFFFF00
Line160(s2).BorderWidth 
=   1
Line160(s2).X1 
=   0
Line160(s2).Y1 
=   0
Line160(s2).X2 
=   0.95   *   - Cos (Label99)
Line160(s2).Y2 
=   0.95   *   Sin (Label99)
 
If  Label33  >=   85   Then
     Label34 
=   " 副油箱已抛弃! "
     Label34.Visible 
=   True
     Shape4.Visible 
=   True
     
     
     
End   If

If  Label33  >=   170   Then
     Label34 
=   " 注意返航! "
     
     Label34.ForeColor 
=   & HFFFF &
      Shape4.BorderColor 
=   & HFFFF &
     Shape4.FillColor 
=   & HFFFF &
      Timer8.Enabled 
=   True
     
End   If
If  Label33  >=   339   Then
     Label34 
=   " 剩余燃油够飞行10分钟! "
     Label34.ForeColor 
=   & HFF &
      Shape4.BorderColor 
=   & HFF &
     Shape4.FillColor 
=   & HFF &
     Timer8.Enabled 
=   True
     Timer8.Interval 
=   500
End   If
If  Label33  >=   369   Then
     Label34 
=   " 警告!剩余燃油仅够飞行5分钟 "
     
      Timer8.Enabled 
=   True
     Timer8.Interval 
=   250
End   If

If  Label99  =   74.78   Then
     Label34 
=   " 燃油耗尽 "
     Timer4.Enabled 
=   False
     Timer8.Enabled 
=   False
End   If

 

End Sub
Private   Sub  Picture7_KeyDown(KeyCode  As   Integer , Shift  As   Integer )
If  KeyCode  =   37   Then   ' 向左

 
End   If
   
If  KeyCode  =   39   Then   ' 向右

 
End   If
 
If  KeyCode  =   38   Then
Label5.Top 
=  Label5.Top  -   10   ' 向上

Label19.Top 
=  Label19.Top  -   10
Label19 
=   " 高度 "   &  ( 8520   -  Label5.Top)  &   " m "
Label2 
=  ( 8520   -  Label5.Top)  &   " m "

Timer7.Enabled 
=   True
 
 
 
If  ( 8520   -  Label5.Top)  >=   25000   Then
 
 Label3.Visible 
=   True
 
 
End   If
 
  
If  ( 8520   -  Label5.Top)  <=   25000   Then
 
 Label3.Visible 
=   False
 
 
End   If
 
   
If  ( 8520   -  Label5.Top)  >=   8420   Then
 
 Label19.Top 
=   30
 Label5.Top 
=   70
 
End   If
 
 
 

 
 
 
 
End   If
 
If  KeyCode  =   40   Then   ' 向下
 Label5.Top  =  Label5.Top  +   10   ' 向上
 Label19.Top  =  Label19.Top  +   10
 Label19 
=   " 高度 "   &  ( 8520   -  Label5.Top)  &   " m "
 Label2 
=  ( 8520   -  Label5.Top)  &   " m "
 Timer7.Enabled 
=   True
 
End   If
 
 
If  ( 8520   -  Label5.Top)  <=   25000   Then
 
 Label3.Visible 
=   False
 
 
End   If
 
End Sub
Private   Sub  Timer5_Timer()
' Label99 = 74.77最小
'
Label99 = 76.97中间值
'
Label99 = 79.18最大 Label3
Label29  =  Label32  *   2.42857142857143   /   1000   *   3600
 a6 
=  a6  +   1
Label32 
=  a6  -   1
 Label25 
=   74.77   +  Label32  /   90
Angle 
=   0.5236   *  ( 360   -   Second (Now)  /   5 )
Line162(s2).BorderColor 
=   & HFFFF00
Line162(s2).BorderWidth 
=   1
Line162(s2).X1 
=   0
Line162(s2).Y1 
=   0
Line162(s2).X2 
=   0.95   *   - Cos (Label25)
Line162(s2).Y2 
=   0.95   *   Sin (Label25)
 
If  Label25  >=   79.17   Then    ' 向下
Timer5.Interval  =   0
Timer5.Enabled 
=   False
End   If
If  Label32  >=   325   Then
Label3 
=   " 警告:飞机已超过最大飞行速度! "
Label3.Visible 
=   True
End   If

End Sub
Private   Sub  Timer6_Timer()
Label29 
=  Label32  *   2.42857142857143   /   1000   *   3600
Label32 
=  a6  -   1
a6 
=  a6  -   1
Label25 
=   74.77   +  Label32  /   90
Angle 
=   0.5236   *  ( 360   -   Second (Now)  /   5 )
Line162(s2).BorderColor 
=   & HFFFF00
Line162(s2).BorderWidth 
=   1
Line162(s2).X1 
=   0
Line162(s2).Y1 
=   0
Line162(s2).X2 
=   0.95   *   - Cos (Label25)
Line162(s2).Y2 
=   0.95   *   Sin (Label25)
 
If  Label25  <=   74.78   Then   ' 向下
Timer6.Interval  =   0
Timer6.Enabled 
=   False
End   If
If  Label32  <=   324   Then
Label3.Visible 
=   False
End   If
If  Label32  <=   0   Then
Label29 
=   " 0 "
End   If
End Sub

Private   Sub  Label27_MouseMove(Button  As   Integer , Shift  As   Integer , x  As   Single , Y  As   Single )
 
Static  q1  As   Long
Timer5.Enabled 
=   True

Timer6.Interval 
=   50
Line7.Visible 
=   False
Timer7.Enabled 
=   True
 
End Sub
Private   Sub  Picture2_MouseMove(Button  As   Integer , Shift  As   Integer , x  As   Single , Y  As   Single )
Timer5.Enabled 
=   False
Timer6.Enabled 
=   False

End Sub
Private   Sub  Label21_MouseMove(Button  As   Integer , Shift  As   Integer , x  As   Single , Y  As   Single )
Static  q2  As   Long
Timer6.Enabled 
=   True
Timer5.Interval 
=   50

Line7.Visible 
=   False
Timer7.Enabled 
=   True
End Sub
Private   Sub  Timer7_Timer()
sk1 
=  sk1  +   1
 
If  sk1  =   1   Then
Label17 
=   "     本次飞行资料 "   &  vbCrLf  &   " ---------------------- "   &  vbCrLf
Label17 
=  Label17  &   "   起飞时间: "   &  Label28  &  vbCrLf
Label17 
=  Label17  &   "   飞行高度: "   &  Label2  &  vbCrLf
Label17 
=  Label17  &   "   空  速: "   &  vbCrLf
Label17 
=  Label17  &   "   加力速度: "   &  vbCrLf
Label17 
=  Label17  &   "   飞行高度: "   &  vbCrLf
Label17 
=  Label17  &   "   飞行速度: "   &  vbCrLf
Label17 
=  Label17  &   "   发动机功率: "   &  vbCrLf
Label17 
=  Label17  &   "   爬升速度: "   &  vbCrLf
Label17 
=  Label17  &   "   爬升过载: "   &  vbCrLf
Label17 
=  Label17  &   "   巡航速度: "   &  vbCrLf
Label17 
=  Label17  &   "   加速度过载: "   &  vbCrLf
Label17 
=  Label17  &   "   录音保存格式: "   &  vbCrLf
Label17 
=  Label17  &   "   内部燃油: "   &  vbCrLf
Label17 
=  Label17  &   "   瞬时转弯速度: "   &  vbCrLf
Label17 
=  Label17  &   "   持续转弯速度: "   &  vbCrLf
End   If
If  sk1  >=   2   Then
Timer7.Enabled 
=   False
sk1 
=   " 0 "
End   If
End Sub

Private   Sub  Timer8_Timer()
a7 
=  a7  +   1
If  a7  =   1   Then
Shape4.Visible 
=   True
End   If
If  a7  =   2   Then
Shape4.Visible 
=   False
a7 
=   0
End   If
End Sub

      源代码下载:航空仪表模拟 

      下一篇:键盘虚拟测试

posted on 2010-02-10 09:00  金杰 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/lvjinjie/archive/2010/02/10/1666928.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值