1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
|
Option Strict On
Public Class Form1
'Das einzige was genau ist, ist die Surfzeit.
'Nämlich die vergangene Zeit seit Programmstart.
'Und daraus muss sich das Guthaben berechnen, nicht umgekehrt.
Dim guthaben As Decimal = 1D ' 1 Euro
Dim KostenProSekundeInCent As Decimal
Dim stopwatch1 As New System.Diagnostics.Stopwatch
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
' Berechnen...
KostenProSekundeInCent = Me.NumericUpDown1.Value / 3600
guthaben -= KostenProSekundeInCent
' ---------------> BUGY
' Restliches Guthaben in verbleibende Zeit umwandeln...
Dim dtRestlicheZeit As DateTime
dtRestlicheZeit = dtRestlicheZeit.AddSeconds(guthaben / (Me.NumericUpDown1.Value / 3600))
Me.Label2.Text = dtRestlicheZeit.ToLongTimeString
' ---------------> BUGY
' Anzeigen...
Me.Label1.Text = String.Format("Surfzeit:{0}{1} min", Environment.NewLine, (stopwatch1.Elapsed.TotalSeconds * guthaben / 60).ToString("0#.#0"))
Me.Label3.Text = guthaben.ToString("C")
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Timer1.Interval = 1000 : Timer1.Enabled = True : stopwatch1.Start()
End Sub
End Class
|