VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 在VB中用PictureClip控件实现动画
发表评论(0)作者:贾亮, 平台:VB6.0+Win98, 阅读:10649, 日期:2002-05-06
  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


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

  以上是我在自学VB的过程中学会的一个小技巧,希望它能起到一个抛砖引玉的作用。