12. september 2012 - 20:02
Der er
2 kommentarer
Label kan ikke følge med Dispatchertimer
Jeg har lavet et lille reaktions spil.
Brugeren skal reagere på et billede.vNår billede kommer starter tælleren, når brugeren taster en given tast på tastaturet stopper tælleren. For at få det mest nøjagtige billede tæller
timeren i millisekund pr. tik. Jeg bruger en label til at tælle op og det resultat der kommer i den omregner jeg, så jeg får et brugbart resultat(o,xxxx sek.).
Spillet fungere i sin form perfekt, men jeg kan i de 10 forsøg jeg har lavet gennemsnitlig 5 identiske tider, hvilket er ret urealistisk når man tænker på at vi i 1000 dele af et sekund.
Jeg kan se at min label ikke kan følge med timeren.
Er der en anden måde hvorpå jeg kan gøre dette.
Forslag modtages gerne
13. september 2012 - 12:18
#2
Her er den simple udgave.
Start tæller på start - Stop tæller på stop
Imports System.Threading.Timer
Partial Public Class MainPage
Inherits UserControl
Dim WithEvents t As New Windows.Threading.DispatcherTimer
Public Sub New()
InitializeComponent()
t.Interval = New TimeSpan(0, 0, 0, 0, 1)
End Sub
Private Sub t_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles t.Tick
Dim count As Integer
count = CInt(Label1.Content)
count += 1
Label1.Content = count.ToString()
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
t.Start()
End Sub
Private Sub Button2_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button2.Click
t.Stop()
End Sub
End Class