Реализация подобия солнечных часов - Visual Basic .NET
Формулировка задачи:
Ребята помогите пожалуйста. Я начинающий программист, вообщем нужна программа что то наподобие солнечных часов, типо круг и палка, вот и при нажатии на кнопку солнце ходило над палкой и палка как будто отбрасывала тень, тем самым показывая время, искал на форумах коды, но безуспешно(
Решение задачи: «Реализация подобия солнечных часов»
textual
Листинг программы
Public Class Form3 Private dd, d, xx, yy As Integer Private isLoad As Boolean Private pn As Pen Private Rotation As Double Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load isLoad = False PictureBox1.Width = 300 PictureBox1.Height = 300 Timer1.Interval = 300 d = 30 dd = 10 pn = New Pen(Brushes.DarkGray, dd) Rotation = 0 End Sub Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click isLoad = True PictureBox1.Invalidate() Timer1.Enabled = True End Sub Private Sub PictureBox1_Paint(sender As System.Object, e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint If Not isLoad Then Exit Sub Dim g As Graphics = e.Graphics Dim ww As Integer = PictureBox1.Width / 2 Dim d2 As Integer = d / 2 Dim dd2 As Integer = dd / 2 g.Clear(PictureBox1.BackColor) g.TranslateTransform(ww, ww) g.RotateTransform(CSng(Rotation * -57.3)) g.FillEllipse(Brushes.Yellow, ww - 2 * d, -d2, d, d) g.DrawLine(pn, New Point(-dd2 / 2, 0), New Point(-ww + 2 * d, 0)) g.FillEllipse(Brushes.Brown, -dd2, -dd2, dd, dd) 'g.RotateTransform(Rotation * -57.3) End Sub Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick Rotation += 0.05 PictureBox1.Invalidate() End Sub End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д