Dim t As Integer Private Sub Command1_Click() Shape1.Left = Rnd * 100 Shape1.Top = Rnd * 50 Timer1.Enabled = True t = 0 End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCode Case 37 Shape1.Left = Shape1.Left - 1 Case 39 Shape1.Left = Shape1.Left + 1 Case 40 Shape1.Top = Shape1.Top - 1 Case 38 Shape1.Top = Shape1.Top + 1 End Select End Sub Private Sub Form_Load() Form1.Height = 10000 Form1.Width = 10000 Form1.Scale (0, 50)-(100, -50) For i = 1 To 50 Load Shape2(i) Shape2(i).Visible = True Next i Shape1.Left = Rnd * 100 Shape1.Top = 0 End Sub Private Sub Timer1_Timer() t = t + 1 For i = 0 To 50 Shape2(i).Left = i * 100 / 51 Shape2(i).Top = 50 * Sin(6.24 / 51 * i + t * 3.14 / 180) Next i If t = 1000 Then t = 5 For i = 0 To 50 If Abs(Shape2(i).Left - Shape1.Left) < 3 And Abs(Shape2(i).Top - Shape1.Top) < 3 Then MsgBox "你被抓住了,无法逃脱.你坚持了" & t / 100 & "秒" Timer1.Enabled = False End If Next End Sub 需要四个控件。command1(command1.caption="(重新)开始"),shape1,shape2(注意将其index改成0),timer1(timer1.interval=10)。shape1和shape2最好用两种不同的颜色,两者的fillstyle=1.没有了,不过百度直接搜vb吃豆子小游戏都能查到有下载的。。。。就不明白了,既然刚学为什么找这种来做。。