none
请高手进 急!!!! RRS feed

  • 问题

  •  

    请高手进 急!!!!

    请问如何用VB编个软件实现打字速度的测试,要求能在输入时用其他颜色标出打错的字,软件设置两个按钮,一个开始,一个结束,一按结束就停止并计算速度,另外内部设置一个时间,到了规定时间就自动结束计算速度。懂的请将代码发给我
    e-mail:hayzcfan@foxmail.com
    谢谢
    急用啊
    2008年10月19日 1:25

全部回复

  • 你好!
       你可以这样实现:
       使用Timer来计时,设置为60秒,然后设置一个int inputCount成员来计数,在KeyDown事件的处理函数中将这个inputCount成员加1,然后Timer结束的时候输出inputCount就可以了。另外再设置一个Timer,时间到了,结束计算。
       具体代码我没有写,应该不难实现。
    2008年10月19日 4:34
    版主
  • 要求能在输入时用其他颜色标出打错的字

    2008年10月20日 4:00
  • 你好!
       如果你的输入是中文,那似乎很难实现,如果你输入的是英文,可以研究一下office提供的功能接口,自己从头实现很困难。
       具体office编程方面的问题,可以去office版块提问,这个我没有研究过,十分抱歉,只能帮上你这么多了。
    2008年10月20日 4:30
    版主
  • RichTextBox SelColor 属性

     

     

    2008年10月20日 5:39
    版主
  • 能不能具体点,帮我把代码写出来啊

    2008年10月20日 7:15
  • 记得金山打字通有个测试打字速度的功能的,它是一个对照录入的功能,这样就无所谓中英文的问题了。

    另外颜色改变应该也能实现,建议楼主可以仿照一下。

    2008年10月20日 9:50
  •  

    Dim i As Integer '
    Dim zheng As Integer '保存输入正确的值
    Dim err1 As Integer '保存输入错误的值
    Dim timei As Integer





    Private Sub Command1_Click()
    Dim name As String
    With CommonDialog1
    .ShowOpen
    name = .FileName
    End With
    RichTextBox1.LoadFile name
    ccrpProgressBar1.Max = Len(RichTextBox1.Text)
    End Sub



    Private Sub Command2_Click()
    End

    End Sub

    Private Sub Command3_Click()

    End Sub

    Private Sub Form_Load()
    ccrpProgressBar1.Max = Len(RichTextBox1.Text)
    i = 1
    timei = 0
    RichTextBox1.SelStart = 3

    RichTextBox1.SelColor = vbRed

    End Sub

    Private Sub Text1_Change()
    If Len(Text1.Text) <> 0 Then
    If Mid(RichTextBox1.Text, Len(Text1.Text), 1) = Mid(Text1.Text, Len(Text1.Text), 1) Then
    RichTextBox1.SelStart = i - 1
    RichTextBox1.SelLength = 1
    RichTextBox1.SelColor = vbBlue
    zheng = zheng + 1
    i = i + 1
    Else
    If i = -1 Then
    i = 1
    End If
    RichTextBox1.SelStart = i - 1
    RichTextBox1.SelLength = 1
    RichTextBox1.SelColor = vbRed
    i = i + 1

    err1 = err1 + 1
    End If
    Else
    i = i - 1
    RichTextBox1.SelStart = 0
    RichTextBox1.SelLength = 1
    RichTextBox1.SelColor = &H80000012
    End If



    If ccrpProgressBar1.Value >= Len(Text1.Text) Then
    MsgBox "ok"
    Exit Sub
    Else
    ccrpProgressBar1.Value = Len(Text1.Text)
    End If

    End Sub


    Private Sub Text1_KeyPress(KeyAscii As Integer)
    Dim rlen As Integer '保存RText的值
    Dim tlen As Integer '保存text1的值


    If KeyAscii = 8 Then
    rlen = Len(RichTextBox1.Text)
    tlen = Len(Text1.Text)

    If tlen > 1 Then
    RichTextBox1.SelStart = tlen - 1
    RichTextBox1.SelLength = rlen
    RichTextBox1.SelColor = &H80000012
    i = i - 2
    End If
    End If


    If ccrpProgressBar1.Value <> 0 Then
    ccrpProgressBar1.Value = ccrpProgressBar1.Value - 1
    End If


    End Sub

    Private Sub Timer1_Timer()
    timei = timei + 1
    Label2.Caption = Int(((Len(Text1.Text)) / timei) * 60) & "/分"
    End Sub
    'by dz

     

     

     

    谁能部能根据这段代码,帮我把窗体弄出来,弄成图片给我看一下

    另外,着重号那行代码好像错了,错在哪啊
    2008年10月21日 7:04