首页 > 学院 > 开发设计 > 正文

在VisualBasic中实现启动程序时的闪烁屏幕

2019-11-18 17:36:24
字体:
来源:转载
供稿:网友
----在大量的应用软件中,软件启动后一幅画面有几秒的信息显示,列出产品、平台、版本号和版权信息,称之为“启动程序时的闪烁屏幕”。在VisualBasic中是如何实现的呢?本文讨论生成启动屏幕的一种方法,并使之多彩化。做到启动屏幕在桌面停留时,提示文字在桌面上“流动”(如《东方快车》启动画面)。同时也可以实现流动文字的闪烁、变色等效果。如果在文字底部设置画面,文字可以从画面上流动。待显示完毕从画面顶部消失后,可重新从画面底部冉冉升起,循环出现。这样设计后,可用在软件说明及著作者列表等等,以丰富的软件的画面显示效果。

----取工程1,窗体Form1、Form2,设Form1为启动窗体。在Form2上新建Frame1、Timer1和Temer2,Frame1的Caption属性设置成空值,以形成美观的立体边框。Timer1和Temer2的Enabled的属性设为True。在Frame1上创建Picture1,调整Picture1为合适大小。将Form1的ScaleMode属性设为1-Twip,Form2的StartUpPosition属性设为2-CenterScreen(中心对齐)。为了保证窗体Form2不显示窗体最上面的“蓝色说明条”,将Caption属性设为空值,ControlBox属性设为False即可。在Picture1上创建标签Label1,调整BackStyle为0(透明)。在Label1的Caption属性填写“作者:沈阳姜雪小姐”一段文字,以便观察。调整文字的大小、颜色。在窗体Form2上可随意设置版面信息。

----Form1代码如下:

PRivateSubForm_Load()
Form1.Visible=0'使窗体Form1不可见
Form2.Show'显示窗体Form2
EndSub

Form2各控件代码如下:
OptionExplicit
DimStep1,Step2,Step3AsInteger
DimZfAsString
DimIAsInteger

PrivateSubForm_Click()
'单击窗体Form2时,结束窗体Form2的执行,
显示窗体Form1,关闭Timer、Timer1。
UnloadMe
Form1.Show
Timer1.Enabled=False
Timer2.Enabled=False
EndSub

PrivateSubForm_Load()
Picture1.Picture=LoadPicture
("c:/windows/Clouds.bmp")'任意选择一图片
Timer1.Interval=80'时间步长
Timer2.Interval=50
EndSub

PrivateSub
Frame1_Click()'单击控件Frame1内区域时,
结束窗体Form2的执行,显示窗体Form1,关闭Timer、Timer1。
UnloadMe
Form1.Show
Timer1.Enabled=False
Timer2.Enabled=False
EndSub

PrivateSub
Picture1_Click()
'单击图片Picture1内区域时,结束窗体Form2的执行,
显示窗体Form1,关闭Timer、Timer1。
UnloadMe
Form1.Show
Timer1.Enabled=False
Timer2.Enabled=False
EndSub

PrivateSubTimer1_Timer()
ColorLabel1,15,13,9'调用变换的颜色
I=I 1
IfI>50Then'窗体Form2停留时间,可以调整大小
UnloadMe
Form1.Show
Timer1.Enabled=False
Timer2.Enabled=False
EndIf
EndSub
SubColor(CtrlAsControl,color1AsInteger,
color2AsInteger,color3AsInteger)'选取颜色
IfVal(Ctrl.Tag)=color1Then
Ctrl.Tag=color2
ElseIfVal(Ctrl.Tag)=color2Then
Ctrl.Tag=color3
ElseIfVal(Ctrl.Tag)=color3Then
Ctrl.Tag=color1
Else
Ctrl.Tag=color1
EndIf
Ctrl.ForeColor=QBColor(Ctrl.Tag)
EndSub

PrivateSubTimer2_Timer()'控制文字移动位置及速度
Step1=1800:Step2=4500:Step3=40
IfLabel1.Top<-Step1-Label1.TopThen
Label1.Top=Label1.Top Step2
EndIf
Label1.Top=Label1.Top-Step3
EndSub

----可以调整Timer1.Interval、Timer2.Interval值的大小,它们分别决定文字颜色变换速度及文字流动速度;根据窗体和控件情况调整Step1、Step2为合适值;Step3为文字跳跃步长;通过改变ColorLabel1,I,J,K语句中的I,J,K值来改变文字的变换颜色。在中文VisualBasic5.0下实现。->


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表