求小球自由运动的VB代码

来源:百度知道 编辑:UC知道 时间:2024/05/23 15:27:43
要求要让小球在框内自由运动 碰到框壁的时候可以自动改变方向

所需要控件:shape1,timer1,command1,command2

Dim degree As Single
Const pi = 3.1415926
Dim v As Integer
Dim r As Single

Private Sub Command1_Click()
Timer1.Enabled = False
Form_Load
End Sub

Private Sub Command2_Click()
Timer1.Enabled = True
End Sub

Private Sub Form_Load()
Me.Show
Shape1.Shape = 3
Timer1.Enabled = False
Timer1.Interval = 100
Shape1.Left = Me.Width * Rnd
Shape1.Top = Me.Height * Rnd
degree = 2 * pi * Rnd
v = 150
r = 1
Command1.Caption = "结束"
Command2.Caption = "开始"
End Sub

Private Sub Timer1_Timer()
If Shape1.Top > 0 And Shape1.Left > 0 And (Shape1.Left + Shape1.Width) < Me.Width And (Shape1.Top + Shape1.Height) < Me.Height Then
Shape1.Top = Shape1.Top + Sin(degree) * v * r
Shape1.Left = Shape1.Left + Cos(degree) * v * r
v = v * r
Else
Timer1.Enabled = False