Cómo controlar la pelota para que rebote después de golpear la pared programación vb
Agregar una imagen1, temporizador1
Opción explícita
Const BallR privado = 200
Const BallD privado = 2 * BallR + 1
Privado CurX Como Soltero
Privado CurY Como Soltero
Privado OldX Como Soltero
Privado OldY Como Soltero
VelX privado como soltero
VelY privado como soltero
Xmax privado como soltero
Ymax privado como soltero
Sub DrawBall privado()
OldX = CurX
OldY = CurY
Me.picture1.FillColor = &HEE00CC
Me.picture1.FillStyle = 6
Me.picture1.Cls
picture1.Circle (CurX, CurY), BallR, vbRed
End Sub
Sub privado Form_Load()
Ancho = (Ancho - ScaleWidth) + imagen1.Width
Alto = (Alto - ScaleHeight) + imagen1.Height
Xmax = imagen1.ScaleWidth - BallR
Ymax = imagen1.ScaleHeight - BallR
Aleatorizar
CurX = Int((Xmax - BallR + 1) * Rnd + BallR)
CurY = Int((Ymax - BallR + 1) * Rnd + BallR)
ViejoX = CurX
ViejoY = CurY
VelX = Int((40 - 20 + 1) * Rnd + 20)
VelY = Int((40 - 20 + 1) * Rnd + 20)
DrawBall
Temporizador1. Intervalo = 10
Timer1.Enabled = True
End Sub
Private Sub timer1_Timer()
CurX = CurX + VelX p>
Si (CurX > Xmax) Entonces
CurX = Xmax
VelX = -VelX
' Bip
ElseIf (CurX < BallR) Entonces
CurX = BallR
VelX = -VelX
'
Pitido
Finalizar si
CurY = CurY + VelY
Si (CurY > Ymax) Entonces
CurY = Ymax
VelY = -VelY
' Bip
ElseIf (CurY < BallR) Entonces
CurY = BallR
VelY = - VelY
' Beep
Finalizar si
DrawBall
Fin Sub