VB中实现“擦视”技术

发表于:2007-06-21来源:作者:点击数: 标签:
下一页 1 2 3 4 5 6 在电影和电视中应尽量避免“跳跃分隔”的镜头画面,同样 VB 5软件设计时,窗体间切换时也应该做到平滑自然,这就是所说的“擦视技术”(Wipe)。如何实现“擦视技术”,大家都会想到一个功能强大的API函数——位块传输Bitblt( )函数,本文

下一页 1 2 3 4 5 6 

     在电影和电视中应尽量避免“跳跃分隔”的镜头画面,同样VB5软件设计时,窗体间切换时也应该做到平滑自然,这就是所说的“擦视技术”(Wipe)。如何实现“擦视技术”,大家都会想到一个功能强大的API函数——位块传输Bitblt( )函数,本文主要探讨以下两个问题:

(1)Bitblt( )函数只能实现图像的位块传输,那么如何实现背景与控件界面一同擦视;


(2)调用Bitblt( )函数需要传递一长串繁琐的参数,那么如何用一个通用过程将其模块化,使其通用性强,使用简单。


  窗体中的控件虽然不能被擦视,但图像能实现,我们可以首先“拍”下要切换的两个窗体界面的图片,当需要擦视切换时,将一个载有该图片的过渡窗体Show出来,在该窗体上实现擦视切换(以下给出了5种擦视方法),擦视完毕后将其Hide,并将第二个窗体Show出来,这样在视觉上毫无破绽,具体方法如下:


编写一个通用的Wipe过程实现擦视

  (1)在一个新工程中添加一个窗体,该窗体只含一个PictureBox控件,属性设置如下:


  对象 Name AutoRedraw ScaleMode Visible BorderStyle


  Form FrmWipe True 3---pixel 0---None

  PictureBox PicResource True 3---pixel False

原文转自:http://www.ltesting.net