请教:想使点击按钮后,很多白色的圆点慢慢地从窗体的底部向上移动,用vb怎样实现?

Dimsp()AsShape,i%PrivateSubCommand1_Click()Me.Timer1.Enabled=TrueEndSubPrivateSubForm... Dim sp() As Shape, i%
Private Sub Command1_Click()
Me.Timer1.Enabled = True
End Sub

Private Sub Form_Load()
me.Timer1.interval=200
Me.Timer1.Enabled = False
End Sub

Private Sub Timer1_Timer()
ReDim sp(1 To 1000)
i = i + 1
Set sp(i) = Controls.Add("vb.shape", "sh" & i)
With sp(i)
.BackColor = vbWhite
.BackStyle = 1
.BorderColor = vbWhite
.BorderStyle = 1
.Shape = 3
.Visible = True
.Left = Rnd * Me.ScaleWidth
.Width = Rnd * 500
End With
sp(i).Top = sp(i).Top + 500
End Sub
展开
 我来答
百度网友bdb9803
2012-02-09 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:53%
帮助的人:1亿
展开全部
很多白色的圆点慢慢地从窗体的底部向上移动,到顶端消失:

Dim sp(1000) As Shape, i%

Private Sub Command1_Click()
Me.Timer1.Enabled = True
End Sub

Private Sub Form_Load()
Me.Timer1.Interval = 200
Me.Timer1.Enabled = False
End Sub

Private Sub Timer1_Timer()
If i < 1000 Then
Set sp(i) = Controls.Add("vb.shape", "sh" & i)
With sp(i)
.BackColor = vbWhite
.BackStyle = 1
.BorderColor = vbWhite
.BorderStyle = 1
.Shape = 3
.Visible = True
.Left = Rnd * Me.ScaleWidth
.Width = Rnd * 500
.Top = Rnd * Me.ScaleHeight
End With
i = i + 1
For j = 0 To i - 1
If sp(j).Top + sp(j).Height > 0 Then sp(j).Top = sp(j).Top - 100
Next
End If
End Sub
一方乐土养生f
2012-02-09 · TA获得超过1044个赞
知道小有建树答主
回答量:691
采纳率:0%
帮助的人:524万
展开全部
还需要一个timer控制shape控件的top属性减小
追问
你会vb,一下子就能写出来,你就给我写一下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式