Uhr mit Zeiger

Uhr mit Zeiger via DoEvents
Private Sub cmd_print_Click()
Me.Hide Startformular wegblenden.
frm_Warten.Show Hinweistext "ES WIRD GEDRUCKT" einblenden.
frm_Warten.Refresh Anzeige aktualisieren.
Warten Die Prozedur "Warten" in Module1 aufrufen.
frm_Warten.Hide Nach Abarbeitung den Hinweis wieder ausblenden.
Start.Show
End Sub

Private Sub cmd_Quit_Click()
End
End Sub
Sub Warten()
Dim i&
For i = 1 To 5000000
DoEvents
Next i Siehe hier eine Funktion zum Erzeugen des runden Fensters
End Sub
Private Sub DrawClock() Zeiger zeichnen
Static last_time As Date
Dim cx As Single, cy As Single, num As Single
Dim radius As Single, theta As Single
If last_time = Now Then Exit Sub
last_time = Now
picClock.Cls
cx = picClock.ScaleWidth / 2 Zeiger Horizontalachse
cy = picClock.ScaleHeight / 2 Zeiger Vertikalachse
Stunden
num = 5 * (DatePart("h", last_time) + DatePart("n", last_time) / 60 + DatePart("s", last_time) / 3600)
theta = MinutesToRadians(num)
radius = picClock.ScaleWidth * 0.25 Länge Stundenzeiger
picClock.DrawWidth = 3
picClock.Line (cx, cy)-Step(radius * Cos(theta), -radius * Sin(theta))
Minuten
num = DatePart("n", last_time)
theta = MinutesToRadians(num)
radius = picClock.ScaleWidth * 0.35 Länge Minutenzeiger
picClock.DrawWidth = 2
picClock.Line (cx, cy)-Step(radius * Cos(theta), -radius * Sin(theta))
Sekunden
num = DatePart("s", last_time)
theta = MinutesToRadians(num)
radius = picClock.ScaleWidth * 0.4 Länge Sekundenzeiger
picClock.DrawWidth = 1
picClock.Line (cx, cy)-Step(radius * Cos(theta), -radius * Sin(theta))
End Sub
Private Sub DrawFace() Minutenkreis zeichnen
Dim r1 As Single, r2 As Single, r3 As Single
Dim cx As Single, cy As Single, i As Integer
Dim theta As Single
picClock.AutoRedraw = True
cx = picClock.ScaleWidth / 2 Minutenkreis Horizantalachse
cy = picClock.ScaleHeight / 2 Minutenkreis Vertikalachse
r1 = picClock.ScaleWidth * 0.45 Minutenkreis (alle Steps)
r2 = picClock.ScaleWidth * 0.4 Minutenkreis (Steps 1 bis 4)
r3 = picClock.ScaleWidth * 0.35 Minutenkreis (5-er Step)
For i = 1 To 60
theta = MinutesToRadians(i)
If i Mod 5 = 0 Then
picClock.Line (cx + r1 * Cos(theta), cy + r1 * Sin(theta))-(cx + r3 * Cos(theta), cy + r3 * Sin(theta))
Else
picClock.Line (cx + r1 * Cos(theta), cy + r1 * Sin(theta))-(cx + r2 * Cos(theta), cy + r2 * Sin(theta))
End If
Next i
picClock.Picture = picClock.Image
End Sub
Private Function MinutesToRadians(ByVal num As Single) As Single
MinutesToRadians = (15 - num) * 2 * PI / 60 Uhrzeit berechnen
End Function
Private Sub Form_Load()
DrawFace
DrawClock
End Sub
Private Sub Form_Resize()
picClock.Cls
DrawFace
End Sub
Private Sub picClock_Paint()
DrawClock
End Sub
Private Sub tmrClock_Timer()
DrawClock
End Sub
Sponsoren und Investoren

Sponsoren und Investoren sind jederzeit herzlich willkommen! Wenn Sie die Information(en) auf diesen Seiten interessant fanden, freuen wir uns über Ihren Förderbeitrag. Empfehlen Sie uns auch gerne in Ihren Netzwerken. Herzlichen Dank!

Nutzen Sie unsere Suchfunktion:

Nach oben Sitemap
Impressum Datenschutz

Hinweis: Diese Webseite kann Werbeanzeigen und Werbeeinblendungen oder eingebundene Links von Diensten und Inhalten Dritter enthalten. Beachten Sie dazu unsere Datenschutzerklärung.