在一些软件演示中,这一屏内容到下一屏内容间往往以一些有趣的清屏图案来相互切换,有的像演出舞台上的开幕、闭幕,有的像百叶窗,也有一些圆形、菱形等形态各异的清屏图案。VB作为一门优秀的WINDOWS下的开发语言,其图形功能也很强。我们完全可以用其提供的画线语句作出上述的清屏图案,下面的程序给出了常见的清屏图案程序:
SubFilSCrO设置背景色
Me.BackColor=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
EndSub
SubClrScrl()从左右两边到中间清屏
DimIAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
ForI=0ToScaleWidth/2
Line(I,0)-(I,ScaleHeight),color
Line(ScaleWidth-I,0)-(ScaleWidth-I,ScaleHeight),color
NextI
EndSub
SubClrSer20从中间到左右两边清屏
DimIAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
forI=ScaleWidth/2To0Step-1
Line(I,0)-(I,ScaleHeight-1),color
Line(ScaleWidth-I,0)-(ScaleWidth-I,ScaleHeight),color
NextI
EndSub
SubClrScr30从上(顶)下(低)到中间清屏
DimIAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
ForI=0ToScaleHeight/2
Line(0,I)-(ScaleWidth,I),color
Line(0,ScaleHeight-I)-(ScaleWidth,ScaleHeight-I),color
nextI
EndSub
SubClrScr40从中间到上(顶)下(底)清屏
DimIAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
ForI=ScaleHeight/2To0Step-1
Line(0,I)_(ScaleWidth,I),color
Line(0,ScaleHeight-I)-(ScaleWidth,ScaleHeight-I),color
NextI
EndSub
SubClrScr50菱形清屏,从四角向中心
DimI,jAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
ForI=0ToScaleWidthSep200
Forj=0ToScaleHeightStep200*ScaleHeight/ScaleWidth
Line(I,0)-(0,j),color
Line(ScaleWidth-I,ScaleHeight)-(ScaleWidth,ScaleHeight-j),color
Line(0,ScaleHeight-j)-(I,ScaleHeight),color
Line(ScaleWidth-I,0)-(ScaleWidth,ScaleHeight-j),color
Nextj
NextI
EndSub
SubClrScr60圆形清屏,由大至小从外围向中心
DimIAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
ForI=ScaleWidthTo0Step-3
Circle(ScaleWidth/2,ScaleHeight/2,I/2,color
NextI
EndSub
SubClrScr70圆形清屏,由小至大从中心向外围
DimIAsInteger:Randomize:color=RGB(Int(Rnd*256),Int(Rnd*256),Int(Rnd*256))
ForI=0ToScaleHeightStep3
Circle(ScaleWidth/2,ScaleHeight/2),I/2,color
NextI
EndSub
‘以上程序作为定义的子函数,置于General间
SubForm_Activate()
FillSCr;ClrScr1;ClrScr2;ClrScr3;ClrScr4;ClrScr5;ClrScr7;ClrScr6
EndSub
PrivateSubForm_Click()
End
EndSub
注:该程序在VB3.0、VB4.0、VB5.0下均通过,程序一开始运行即先后演示从左右到中间,从中间到左右,从上下到中间,从中间到上下,从四角向中心(菱形),从中心向外围(圆形),从外围向中心(圆形)等清屏图案。最后两个清屏图案很有趣,清屏结束后还会形成从中心到四角的放射状图案,似孔雀开屏一样。有兴趣的读者不防一试。另外,请注意FORM(窗体)的AutoRedraw属性值应为False,若为True,则将看不到效果。(昆明无为)
编辑点评:各种清屏特效的编程实现似乎是老生常谈,但从来稿的情况上看,我们发现大多数编程仍然局限于一些比较陈旧的内容,因此,刊本文是希望能有更多的朋友把VFP、VB、Delphi等流行软件开发工具的使用心得与广大读者共享。->