最简单的,做个文本框,所有功能都是文本框提供的啊,默认就行除了把文本框设置为 MultiLine 设置为 True
'有Text1,Text2和Label1
'Text1拿来显示文章,Text2打字,Label1显示正确率
Dim i,p as integer
Private Sub Text1_Change()
For i=1 to Len(Text2.text)
If Mid(Text2.text,i,1)=Mid(Text2.text,i,1) then
p=Int(p+100/Len(Text2.text))
End If
Next i
Label1.Caption=p & "%"
End Sub
简单的打字代码,太难的俺不会做:
窗体上创建一个text1,用于随机显示20 个字符
text2 用于打字输入
按钮1 :用于产生随机字符
label1 : 用于显示正确率
Option Explicit
Private Sub Command1_Click()
Dim i As Integer
Dim rndNum As Integer
Text1 = ""
Randomize
For i = 1 To 20
rndNum = Int(Rnd * 58 + 65)
If rndNum > 90 And rndNum < 97 Then
i = i - 1
Else
Text1 = Text1 & Chr(rndNum) & " "
End If
Next
Text1 = Trim(Text1)
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
Static k As Integer
Static i As Integer
If KeyAscii = 8 Then Exit Sub
i = i + 1
If KeyAscii <> Asc(Mid(Text1, i, 1)) Then k = k + 1
Label1.Caption = "正确率: " & Format((i - k) / i, "0.00%")
If Len(Text2) = Len(Text1) Then KeyAscii = 0
End Sub