Vb05 Animacja
Wykonać animację jak na formularzu
LineShapeSzprycha:
X1 = 100 X2=100 Y1=150 Y2=200 OvalShapeKolo
Location X = 50 Y = 150
Size
Width = 100 Height = 100
Rysunek 1. propozycja formularza z nazwami obiektów
Kod aplikacji
Dim fi As Single = -Math.PI / 2 Dim dfi As Single = 0.1
Dim r As Single = 50 Dim kier As Integer = 1 Dim dv As Single
Dim pos As Single = 1
Private Sub Timer1_Tick(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Timer1.Tick If LineShapeStrzala.X2 < LineShapeTarcza.X1 Then
LineShapeStrzala.X1 = LineShapeStrzala.X1 + 5 LineShapeStrzala.X2 = LineShapeStrzala.X2 + 5 End If
LineShapeSzprycha.X2 = LineShapeSzprycha.X2 + dfi * r * kier * dv * pos LineShapeSzprycha.X1 = LineShapeSzprycha.X2 + r * Math.Cos(fi)
LineShapeSzprycha.Y1 = LineShapeSzprycha.Y2 + r * Math.Sin(fi)
OvalShapeKolo.Left = OvalShapeKolo.Left + dfi * r * kier * dv * pos fi = fi + dfi * kier * dv
End Sub
Private Sub ButtonStart_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles ButtonStart.Click If Timer1.Enabled = True Then
Timer1.Enabled = False ButtonStart.Text = "Start"
Else
Timer1.Enabled = True ButtonStart.Text = "Stop"
End If End Sub
Private Sub ButtonKierunek_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _
Handles ButtonKierunek.Click If kier = 1 Then
kier = -1
ButtonKierunek.Text = "W prawo"
Else
kier = 1
ButtonKierunek.Text = "W lewo"
End If End Sub
Private Sub HScrollBarV_Scroll(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.ScrollEventArgs) _ Handles HScrollBarV.Scroll
dv = HScrollBarV.Value / 100 End Sub
Private Sub HScrollBarPoslizg_Scroll(ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.ScrollEventArgs) _ Handles HScrollBarPoslizg.Scroll
pos = 1 - HScrollBarPoslizg.Value / 100 End Sub