王朝网络
分享
 
 
 

在VB中制作单独程序封面的两种方法

王朝厨房·作者佚名  2007-01-04
宽屏版  字体: |||超大  

这里所谓的单独封面,是只独立应用程序窗口本身的一个窗口,这个窗口在程序运行时首先弹出屏幕,用于装饰程序本身,或简单的演示一下程序的优越性。这样的封面在很多专业的WINDOWS程序中均存在,在VB中可有两种简单的方法实现这一功能。

第一种方法:多窗体编程方法

此方法是通常采用的方法,即在程序中创建两个或两个以上的Form窗体,把其中的一个作为专门的程序封面制作场所,具体方法:

1、创建一个新项目Form1,并在此窗体内安放Command1命令按钮,在Command1-Click()事件中输入结束程序代码“END”。

2、单击菜单的“Insert"项目,加入一个新窗体Form1。

3、双击Form1窗体空白处,在Form1-Load()事件中输入如下代码,用于隐藏主窗体Form1,置第二窗体为最大模式,并在运行程序首先显示和二窗体:

Private Sub Form-Load () ’隐藏主窗口

Form1.Visible = 0 ’窗口2最大模式

Form2.WindowState =2 ’显示窗口2

Form2.Show

End Sub

4、 在窗体Form2中定义全程变量:

Dim strr1 As String

Dim i As Integer

5、在窗体Form2中放入一个时间控件Timer1。

6、在窗体Form2中的Form-Load ()事件中输入以下代码,用于在窗体2中显示图像,并置时间控件频率:

Private Sub Form-Load ()

Form2.Picture = LoadPicture("c:\windows\setup.bmp")

Timer1.Interval = 10

i =0

End Sub

7、在时间控件Timer1- Timer1()事件中进行程序封面的制作工作,演示简单的动画,并控制此动画运行一段时间后自动停止,关闭程序封面,返回程序主窗口;下面的代码实现在一个图片上随机显示字符串,显示30次字符串后自动退出。

Private Sub Timer1-Timer ()

Strr1 = "程序封面演示“

With Form2

.Font.Transparent =True ’透明显示字符

.Font.Size = Rnd *30+10 ’随机变化字号

.Font.Italic =True ’斜体有效

.ForeColor=RGB(Rnd*256,Rnd*256,Rnd*256) ’随机变化前景

.FontName =Screen.Fonts (Rnd*7+14) ’随机变化字体

End With

hh=Form2.TextHehght (strr1) ’取字符串高度

ww= Form2.TextWidth (strr1) ’取字符串宽度

x=Rnd * ( Form2.ScaleWidth-ww) ’随机改变坐标

y=Rnd *( Form2.ScaleHeight-hh)

Form2.Current X=x

Form2.Current Y=y

Form2.Print strr1 ’显示字符

i = i +1 ’计数

If i >30 Then

Unload Me ’关闭封面

Form1.Show ’调入主窗口

Timer1.Enabled =False ’关闭时间控件

End If

End Sub

8、为了能够人为地控制程序封面的停留时间,可在窗体Form2鼠标单击事件中安放退出封面代码:

Private Sub Form-Click ()

Unload Me

Form1.Show

Timer1.Enabled =False ’关闭时间控件

End If

End Sub

至此工作全部完成,当运行程序时,首先弹出程序封面,封面上显示一幅。BMP图像,之后在此图像上进行随机字符串的显示,字符串的位置、字体、字号、前景色等值都是随机变化的,显示30次后自动关闭封面返回主窗口,演示过程中用鼠标单击窗口也会返回主窗口,在主窗口中按下结束按钮退出程序。具体操作时还有很多其它技巧,比如可以置第二个窗体为主窗体,这样运行时可自动先弹出程序封面,可省略隐藏窗体和调入窗体的过程,另外第二窗体也可以在程序运行时由代码动态生成,这样编程时复杂一些,但有利于程序代码的管理;程序封面的具体制作过程,有许多动态图像控制方法可以使用,只要灵活动用VB的作图方法,再加上一些必要的API函数的配合,会制作出理想的程序封面。

第二种方法:隐藏控件方法

多窗口编程存在着一定的复杂性,需要对多个窗体的·Frm文件进行管理,编码时还需要频繁地在多个窗口间进行转换。实际上通过一个窗体也可以编制出类似的封面效果。基本原理就是在程序运行时首先通过VISIBLE属性隐藏全部控件,然后在主窗体内进行程序封面设计和演示,延时一定时间再恢复所有控件的显示,即达到了独立程序封面的制作过程。由于窗体内的控件很多,逐一隐藏或显示非常繁琐,可采用容器控件简化操作过程,即把控件全部放到Frame1等控件上,这样只要执行Frame1.Visible=0,即可使其上面的所有控件隐藏起来。

c由于程序只涉及一个窗体,程序设计的大部分工作只是编码过程,所以不再分步介绍。在窗体Form1中安放一个时间控件Timer1 和一个容器控件Frame1,再在Frame1上安放一个命令按钮Command1,具体程序设计时可把所有主程序工作控件放在Frame1上;之后把下面的代码填入相应的事件之中即可完成全部程序设计工作。运行此程序后首先在全屏幕窗体内显示图像,并从左上角开始逐渐放大字符串“程序封面演示”,放大过程中颜色发生平滑变化,形成美丽的拖尾效果,连续显示5次后自动关闭封面,返回主程序窗口,同样立即关闭程序封面,返回主程序窗口,单击主窗体中的命令按钮退出程序。

’定义全程变量

Dim i ,j As Integer

’退出程序按钮

Private Sub Command1-Click ()

End

End Sub

’单击窗体关闭封面

Private Sub Form-Click ()

Frame1.Visible =1 ’恢复容器控件

timer1.Enabled =False ’关闭时间控件

Form1.WindowState =0 ’恢复缺省窗口模式

End Sub

’准备工作

Private Sub Form -Load ()

Form1.WindowState =2 ’窗口最大化

Frame1.Width =Form1.Width ’调整容器控件尺寸

Frame1.Height =Form1.Height

Frame1.Top =0 ’调整容器控件位置

Frame1.Left =0

Frame1.Visible =0 ’隐藏容器控件

timer1.Interval =10 ’置时间频率

Form1.Picture =LoadPicture ("c:\windows\setup.bmp") ’装入图像

Form1.ScaleMode=3 ’置坐标刻度

Form1.FontName =“黑体” ’置字体名称

End Sub

’封面制作 (动画演示)

Private Sub timer1-Timer ()

Strr ="程序封面演示"

With Form1 ’透明显示

.Font.Transparent =True

.Font.Size = i + 1 ’放大字号

.Font.Italic =True ’斜体有效

.ForeColor=RGB(i*3,56,256-i*3) ’平滑变化颜色

End With

string =strr

Form1.Current X=i ’连续改变坐标

Form1.Current Y=i

Form1.Print stringg ’显示字符串

i = i +1

If i >72 Then ’放大到72号字

j =j +1 ’循环计数

i =0

Form1.Current X=72

Form1.Current Y=72

Form1.ForeColor =RGB(255,56,0) ’重新显示一次字符

Form1.Print stringg

End If

If j =5 Then ’动画计数

Frame1.Visible =1 ’显示容器控件

timer1.Enabled =False ’关闭时间控件

Form1.WindowState=0 ’恢复窗口模式

End If

End Sub

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有