callorhinchus milii:那位GGJJ,DDMM能告诉我VB中如何实现多个图片的不断滚动啊。就像网页中的跑马灯那样子

来源:百度文库 编辑:中科新闻网 时间:2024/05/02 11:53:57

VB的功能强大,比如用PictureClip等控件组合就可以轻松实现动画。

PictureClip控件本身并不能显示图像,它是依靠与picture控件或IMAGE控件的组合来完成动画的。PictureClip控件就像是一个图片仓库,所不同的是仓库中的图片只有一张。PictureClip控件将此图片平均分成若干区域,程序运行时PictureClip控件将指定的区域赋值给一个显示控件的有关属性,如picture控件的picture属性。

下面我们以VB5?0为例,具体的来介绍使用PictureClip控件实现动画。

首先,我们应该确定工具箱中有PictureClip控件,如果没有,我们应通过工程菜单的“部件”来添加PictureClip控件。

有了PictureClip控件后,在窗体上添加PictureClip控件。按F4键显示属性窗口,双击“自定义”属性则出现一个“属性页”对话窗口。选取“图片”项,单击“浏览”选定一个图片。一般情况下此图片应是若干个大小相同的小图片组成。我们以VB例程中的REDTOP?BMP为例,选取一个图片后我们在“预览”框中就可以看见图片全貌。我们发现REDTOP?BMP图片由三行六列共18个小图片组成,选择“通用属性”项,根据我们的上述发现,定义好“行”、“列”的值,划分好图形区域。

此时我们在窗体上就可以看见REDTOP图片。在运行时PictureClip控件是不可见的,所以不需要理会PictureClip控件的位置。

在以后的过程中,我们可以将一图形显示控件,调整大小,放在窗体中指定的位置,将PictureClip控件中指定区域,赋值给显示控件的picture属性,便可以显示图形了,设PictureClip控件区域值为一变量,在定时控件中,用循环语句改变此变量,就可以实现动画了。例程如下:

Dim a As Integer ′在模块说明中定义a变量

Private Sub Form_Load()

′指定picture1的图形为PictureClip控件中的第二个图形区域

picture1.picture=PictureClip1.GraphicCell(1)

′定义变量a的初始值和定时控件的时间间隔属性

a=1

Timer1.Interval=100

End Sub

Private Sub Timer1_Timer()

′每发生一次Timer事件时改变变量a的值

a=a+1:If a=18 Then a=0

′利用变量值的改变给picture1控件指定不同的图形

picture1.picture=PictureClip1.GraphicCell(a)

End Sub

怎么样,如此简单就可以实现动画!如法炮制,我们可以实现立体图形按钮等效果。