Tällä koodilla saat formille kellon. Viivan pisteiden laskennasta olisi voinut tehdä funktion, jolloin koodista olisi tullut lyhyempi, mutta sen voit toteuttaa itse. Laita formille timer (timer1).
Tämä koodi formiin
Dim keskix As Integer Dim keskiy As Integer Dim kulma As Integer Dim etäisyys As Integer Dim viivaX As Integer Dim viivaY As Integer Option Explicit Private Sub Form_Load() 'aluksi määritellään muuttujia keskix = Form1.ScaleWidth / 2 keskiy = Form1.ScaleHeight / 2 kulma = 0 etäisyys = Form1.ScaleHeight / 3 'aika Timer1.Interval = 1000 End Sub Private Sub Form_Resize() 'kun formia skaalataan, keskipiste ja etäisyys muuttuvat keskix = Form1.ScaleWidth / 2 keskiy = Form1.ScaleHeight / 2 etäisyys = (Form1.ScaleHeight / 10) + (Form1.ScaleWidth / 10) End Sub Private Sub Timer1_Timer() Form1.Cls 'tyhjätään ikkuna Form1.Caption = "Kello on " & Hour(Now) & ":" & Minute(Now) & ":" & Second(Now) 'Asetetaan ikkunan title ' vohveli kerto sin + cos koodin, propsit sille ' sooda kerto atn jutskan, sillekkin propsit ' Piirretään viisarit ' Sekunnit kulma = (360 / 60) * Second(Now) 'Jaetaan 360 / 60 ja kerrotaan se sekunneilla viivaX = keskix + Sin(kulma * Atn(1) / 45) * etäisyys 'tutkitaan viivan loppupään x viivaY = keskiy + -Cos(kulma * Atn(1) / 45) * etäisyys 'tutkitaan viivan loppupään y Form1.Line (keskix, keskiy)-(viivaX, viivaY), vbBlack 'piirretään viisari 'minuutit Form1.DrawWidth = 2 'paksumpi viiva kulma = (360 / 60) * Minute(Now) 'sama kuin edellisessä mutta kerrotaan minuuteilla viivaX = keskix + Sin(kulma * Atn(1) / 45) * etäisyys viivaY = keskiy + -Cos(kulma * Atn(1) / 45) * etäisyys Form1.Line (keskix, keskiy)-(viivaX, viivaY), vbBlack 'tunnit Form1.DrawWidth = 3 'vielä paksumpi viiva kulma = (360 / 12) * Hour(Now) 'sama kuin edellisessä mutta kerrotaan tunneilla viivaX = keskix + Sin(kulma * Atn(1) / 45) * etäisyys viivaY = keskiy + -Cos(kulma * Atn(1) / 45) * etäisyys Form1.Line (keskix, keskiy)-(viivaX, viivaY), vbBlack Form1.DrawWidth = 1 'takaisin ohueksi Form1.Circle (keskix, keskiy), etäisyys 'piirretään kellon reunat 'kirjoitetaan numerot 6 12 9 3 kellotauluun Form1.CurrentX = keskix Form1.CurrentY = keskiy + etäisyys Form1.Print "6" Form1.CurrentX = keskix Form1.CurrentY = keskiy - etäisyys Form1.Print "12" Form1.CurrentX = keskix - etäisyys Form1.CurrentY = keskiy Form1.Print "9" Form1.CurrentX = keskix + etäisyys Form1.CurrentY = keskiy Form1.Print "3" 'se oli siinä End Sub
Aihe on jo aika vanha, joten et voi enää vastata siihen.