
[local]3[/local]Option Explicit
Dim score As Integer
Dim speed As Integer
Dim typetime As String
'初始化字母1
Sub init1()
'产生随机大写字母、数字及其他符号
'【?】
'起初位置
Lblletter1.Left = Int(Rnd * (Frame1.Width - Lblletter1.Width))
Lblletter1.Top = Frame1.Top - Lblletter1.Height
End Sub
'初始化字母2
Sub init2()
'产生随机小写字母
Lblletter2.Caption = Chr(Int(Rnd * 26) + 97)
'起初位置
Lblletter2.Left = Int(Rnd * (Frame1.Width - Lblletter2.Width))
Lblletter2.Top = Frame1.Top - Lblletter2.Height
End Sub
'开始
Private Sub Command1_Click()
'输入时间
typetime = InputBox("请输入打字时间(单位为秒):", "设置时间")
If IsNumeric(typetime) Then
LblTime.Caption = typetime
Else
Exit Sub
End If
'调用子过程
init1
'【?】
'默认的下落速度
VScroll1.Value = 100
'开始下落
'Timer1.Enabled = 【?】
'Timer2.Enabled = 【?】
Command1.Enabled = False
LblScore.Caption = 0
'设置时间为2分钟
End Sub
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)
End Sub
'打字
Private Sub VScroll1_KeyPress(KeyAscii As Integer)
'若打中字母1
If Chr(KeyAscii) = Lblletter1.Caption Then
'重新初始化
'【?】
'分数累加
score = score + 1
'显示分数
LblScore.Caption = score
End If
'若打中字母2
' If 【?】 Then
init2
score = score + 1
LblScore.Caption = score
End If
End Sub
'初始化设置
Private Sub Form_Load()
Randomize
Timer1.Enabled = False
Timer2.Enabled = False
Lblletter1.AutoSize = True
Lblletter2.AutoSize = True
VScroll1.Max = 300
VScroll1.Min = 20
End Sub
'改变速度
Private Sub VScroll1_Change()
'speed = 【?】
End Sub
'字母下落
Private Sub Timer1_Timer()
'字母1下落
Lblletter1.Top = Lblletter1.Top + speed
If Lblletter1.Top > Frame1.Height Then
init1
End If
'字母2下落
Lblletter2.Top = Lblletter2.Top + speed
If Lblletter2.Top > Frame1.Height Then
init2
End If
End Sub
'控制打字时间
Private Sub Timer2_Timer()
'减时
LblTime.Caption = Val(LblTime.Caption) - 1
'若时间到
If Val(LblTime.Caption) <= 0 Then
'停止字母下落
'【】
Lblletter1.Caption = ""
Lblletter2.Caption = ""
'分析分数
Select Case score / (typetime / 60)
Case Is <= 20
MsgBox vbCrLf + "Don't give up,try again!"
Case Is < 60
MsgBox vbCrLf + "That's right. Come on!"
Case Is < 100
MsgBox vbCrLf + "Continue and you will be top gun!"
Case Is > 150
MsgBox vbCrLf + "Congraduation! You have been a top gun!"
End Select
Command1.Enabled = True
Timer1.Enabled = False
Timer2.Enabled = False
End If
End Sub
Dim score As Integer
Dim speed As Integer
Dim typetime As String
'初始化字母1
Sub init1()
'产生随机大写字母、数字及其他符号
'【?】
'起初位置
Lblletter1.Left = Int(Rnd * (Frame1.Width - Lblletter1.Width))
Lblletter1.Top = Frame1.Top - Lblletter1.Height
End Sub
'初始化字母2
Sub init2()
'产生随机小写字母
Lblletter2.Caption = Chr(Int(Rnd * 26) + 97)
'起初位置
Lblletter2.Left = Int(Rnd * (Frame1.Width - Lblletter2.Width))
Lblletter2.Top = Frame1.Top - Lblletter2.Height
End Sub
'开始
Private Sub Command1_Click()
'输入时间
typetime = InputBox("请输入打字时间(单位为秒):", "设置时间")
If IsNumeric(typetime) Then
LblTime.Caption = typetime
Else
Exit Sub
End If
'调用子过程
init1
'【?】
'默认的下落速度
VScroll1.Value = 100
'开始下落
'Timer1.Enabled = 【?】
'Timer2.Enabled = 【?】
Command1.Enabled = False
LblScore.Caption = 0
'设置时间为2分钟
End Sub
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)
End Sub
'打字
Private Sub VScroll1_KeyPress(KeyAscii As Integer)
'若打中字母1
If Chr(KeyAscii) = Lblletter1.Caption Then
'重新初始化
'【?】
'分数累加
score = score + 1
'显示分数
LblScore.Caption = score
End If
'若打中字母2
' If 【?】 Then
init2
score = score + 1
LblScore.Caption = score
End If
End Sub
'初始化设置
Private Sub Form_Load()
Randomize
Timer1.Enabled = False
Timer2.Enabled = False
Lblletter1.AutoSize = True
Lblletter2.AutoSize = True
VScroll1.Max = 300
VScroll1.Min = 20
End Sub
'改变速度
Private Sub VScroll1_Change()
'speed = 【?】
End Sub
'字母下落
Private Sub Timer1_Timer()
'字母1下落
Lblletter1.Top = Lblletter1.Top + speed
If Lblletter1.Top > Frame1.Height Then
init1
End If
'字母2下落
Lblletter2.Top = Lblletter2.Top + speed
If Lblletter2.Top > Frame1.Height Then
init2
End If
End Sub
'控制打字时间
Private Sub Timer2_Timer()
'减时
LblTime.Caption = Val(LblTime.Caption) - 1
'若时间到
If Val(LblTime.Caption) <= 0 Then
'停止字母下落
'【】
Lblletter1.Caption = ""
Lblletter2.Caption = ""
'分析分数
Select Case score / (typetime / 60)
Case Is <= 20
MsgBox vbCrLf + "Don't give up,try again!"
Case Is < 60
MsgBox vbCrLf + "That's right. Come on!"
Case Is < 100
MsgBox vbCrLf + "Continue and you will be top gun!"
Case Is > 150
MsgBox vbCrLf + "Congraduation! You have been a top gun!"
End Select
Command1.Enabled = True
Timer1.Enabled = False
Timer2.Enabled = False
End If
End Sub