滚球屏保:圆球在屏幕上滚动,当碰到一边就反弹,反弹角度为90
度。
分析:最重要的是判断滚球的反弹方向。圆球移动碰到一边就开始
反弹,为了确定反弹的方向,需要声明一个变量State来储存滚球此时运
动的方向, 1:右下方运动 2:左下方运动 3右上方运动 4左下方运动
。当滚球碰到窗体的一边时根据滚球碰边时的方向改变方向就可以了。
如:当滚球向右下方运动时,如果先碰到窗体的下边界,则滚球向右上
方移动;如果先碰到窗体的右边界,则滚球向做下方移动。
具体代码如下:
'滚球移动的核心代码
'State储存滚球的移动方向,当滚球碰到一边时,改变方向
If State = 1 Then
ImgX = ImgX + ImgLen
ImgY = ImgY + ImgLen
If ImgX > FormW Then
State = 3
ElseIf ImgY > FormH Then
State = 2
End If
ElseIf State = 2 Then
ImgX = ImgX + ImgLen
ImgY = ImgY - ImgLen
If ImgX > FormW Then
State = 4
ElseIf ImgY < 0 Then
State = 1
End If
ElseIf State = 3 Then
ImgX = ImgX - ImgLen
ImgY = ImgY + ImgLen
If ImgX < 0 Then
State = 1
ElseIf ImgY > FormH Then
State = 4
End If
ElseIf State = 4 Then
ImgX = ImgX - ImgLen
ImgY = ImgY - ImgLen
If ImgX < 0 Then
State = 2
ElseIf ImgY < 0 Then
State = 3
End If
End If
滚球屏保的主要代码就这么多,你可以用线程实现多个圆球的滚动。有更好的实现方法,请联系我hz,邮箱:hzdiy@126.com
编写的源程序,您可以在我的上传的资源里找到。
原文链接:https://www.f2er.com/vb/264226.html