拍苍蝇

返回

一、结果展示：

> > （单击上图可以看结果）

二、问题分析：

（1）在窗体上摆放三个图像框：Image1,Image2,Image3，前两个用来存放活苍蝇、死苍蝇的图片（Visible属性设置为False），Image3空着，用来显示 将要放入的图片。

（2）再摆放一个时钟，用来随时改变活苍蝇活动的位置，这时可以利用随机数来确定Image3的Left和Top值。如：

时钟间隔的大小决定了苍蝇移动的速度。

（4）当鼠标击中活苍蝇后，需要做的事是：

> - 将Image3中的图片换成死苍蝇 ，即Image3.Picture=Image2.Picture

> - 得分增加1

> - 显示得分

> 这三件事在哪个事件里做呢？关键要看当鼠标击中了活苍蝇时触发了哪个事件？

> 这时触发的是Image3_Click事件，所以以上三件事应该在Image3_Click事件过程中进行：

> Private Sub Image3_Click()
> s = s + 1 '得分增加1,用变量S来记得分，初值为0，每击中一次加1分
> Label1.Caption = s '显示得分在Label1上
> Image3.Picture = Image2.Picture '死苍蝇图片放到Image3中

> End Sub

（5）还有一个记时器，用两个标签表示，还需要第二个时钟，专门用来记时。设置另一个变量n, . 初值为9，每隔1秒钟减少1。当时间到，弹出第二个窗体。

（6）第二个窗体上提示得分，并询问是否再玩？这里要解决一个问题：第一个窗体中变量S的值要传给第二个窗体，这需要用到模块，按照下图可以在工程中添加一个模块Module1

在模块 Module1写入语句：Public s, n As Integer，这两个变量的值就可以在所有的窗体间互相传递了。

二、界面设计与属性设置：

> Form2

三、代码编写：

Form1的代码

Form2的代码

模块Module1中代码

Public s, n As Integer

说明：当有几个窗体间需要共用一个变量时，可以在工程中添加一个模块，在其中用Public对变量进行说明。