Время нажатия на каждую клавишу

  • Автор темы fanmag
  • Дата начала
F

fanmag

Здравствуйте, нужна ваша помощь!
Есть фраза, которую пользователь вводит в текстовое поле, необходимо посчитать в секундах время нажатия на каждую клавишу и время ее удержания и записать результат в массив.
Подскажите, пожалуйста, каким образом это осуществить?
 
F

fanmag

Private Sub TextBox1_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.N Then
t1 = TimeOfDay.Millisecond
End If
End Sub
Но выдает постоянно результат 0, как исправить ?
 
F

fanmag

Public Class Form1
Dim t1, t2, t3 As Date
Dim i As Integer

Private Sub TextBox1_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode = Keys.N Then
t1 = Now
End If
End Sub
Private Sub TextBox1_KeyUp(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
If e.KeyCode = Keys.N Then
t2 = Now
'e.Handled = True
End If
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
i = 0
If TextBox1.Text = "тестова фраза" Then i = i + 1
Label1.Text = Str(i)

Label2.Text = CStr(t2.Millisecond - t1.Millisecond)
End Sub
End Class

этот код рабочий, но считает только конкретно милисекунды, как его можно офрмить чтобы брались для разницы милисекунды и секунды вместе?
 
R

rrrFer

Количество миллисекунд подели на 1000, целая часть - секунды. Остаток от деления - миллисекунды.
 
Z

Zhuk

А подскажите код, чтобы на форме 1 нажимать кнопку и открывалась форма 2?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!