说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

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

HTML文档下载 WORD文档下载 PDF文档下载
在VB中制作单独程序封面的两种方法
辽宁铁岭 金永涛
这里所谓的单独封面,是只独立应用程序窗口本身的一个窗口,这个窗口在程
序运行时首先弹出屏幕,用于装饰程序本身,或简单的演示一下程序的优越性。这
样的封面在很多专业的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



大数据辅助决策,构建智慧城市 所见即所得:四款免编程移动游戏开发引擎推荐 PaaS乱局:Container的新机遇 IDC再度下调2013年全球PC销量预期 平板电脑中枪 Waze联合创始人做FeeX 用众包方式增加银行服务透明度 Ripple CTO Stefan Thomas:Bitcoin与未来支付应用开发 第二届Coding For Fun编程马拉松实时快报→→ 数字化你的脸:14个智能眼镜开发平台 Unite2013开发者大会:Unity新增多项重磅革新 微软大中华区副总裁谢恩伟:微软云+端应用模型前瞻 移动周报:从硬件马拉松到Barra加盟,本周小米很火 小而美的Diffbot:将Web页面转化为数据库,获多位科技大佬注资 “叙利亚电子军”对美国多家网站发起“电子制裁” 麻省理工TR35之IT界年轻有为创新者(上) Linux用户须知的16款实用软件 新平台,新惊喜:记第二届Coding For Fun 创业建议泛滥成灾 实用的不多 腾讯云俱乐部北京站:知名手游商畅谈云时代开发运营策略 LG再战平板市场:将推出8.3英寸平板G Pad 编程语言与工具专题论坛:各类编程语言使用体会分享 淘宝、腾讯、豆瓣、支付宝、网易专家热议大数据分析与BI实战 “创新或灭亡”:Google的80/20只是转移视线的说辞罢了 自动化编排,配合SDN的iMC V7更加开放 [回顾]比尔·盖茨传奇的前半生 IT基础设施与运维论坛:IT基础设施及运维经验分享 记华为HCC2013 Day1:发力高端存储 HCC 2013虚拟化论坛:虚拟化未来发展方向 Windows 8操作系统市场份额增至7.41% Windows 7仍最受欢迎 【开源专访】Sea.js创始人玉伯的前端开发之路 SDCC 2013:阿里周宝方谈“去IOE”战略及实施 百度和高德:最后谁是地图的王者? 有没有平面按钮控件 Interdev6.0 IDE 环境下无法使用MSDN access一个日期时间字段是短格式的,用什么SQL语句改成长格式的?? 大家来帮帮我想想?应该怎么样来删除呢!!!! 各位用VB.net的兄弟,请问你们使得是 Beta1 还是 Beta2 ? 迷周星弛的请来签名啊! 如何操纵RichTextEdit控件??? 我得到GIF图像的这一点的值,怎样得到它的正确的RGB值? 我想请问在CHTML(compact html)中如何对页面进行刷新。 各位老大,你们是如何找到工作的? 在VB.net中,如何实现VB6中的 set A=createobject("XXXX.XXXX") 诸位大虾救命,如何在EDIT控件中判断DBCS字符 !!求救!!对时!!! 在VC中使用Crystal report 8的问题 如何编写c程序自动对GIF图片设置大小 请教:鼠标在windows桌面上按键是否会引发某个事件? 查看DLL的输出函数 menu的问题 web的组件由什么来编写? 嵌入式数据窗口,怎样可以动态往里插数据窗口??? 在DELPHI中如何调用NETBIOS的API函数 AddNew 怎么用?- 怎么办那,啊? 问题标题前的绿色的对号是什么意思?是不是表示问题已经解决? 怎么学VC啊,菜鸟的菜菜的问题啊。 关于打印比较 提取汉字的拼音 四级挂了,给分,气死了 难题时时有,把它问诸位,不知哪位高手,今日肯帮俺------解决送个人照片(不知各位肯要否?) 刚考完英语四级,来这里发泄一下。同时送上300分! PHP和JAVA如何通讯? 请问哪里有 soft-ice for 2k 如何将字符串的首尾空格去掉??? 1分钟求解:与HEX()对应的把16进制转换成10进制的函数是什么? 怎样判断某个控件是button、edit还是combox、listctrl......? VB.NET(VS.NET)/Beta2正式版下载地址与安装方法 有人用VsPrint吗? delphi、vc、c++ builder三者,哪一种是你的最终选择,why? 第一次上来灌,宋粉 关于C编译后的几个文件后缀名. 请教各位,主要用于办公和工程预决算,用AMD的Duron+km133(集成savage4)行吗? delphi、c++ builder、vc三者,哪一种是你的最终选择,why? 程序结束时,窗体和内存的释放问题 c++ builder、delphi、vc三者,哪一种是你的最终选择,why? 唉,牙齿好疼 高分求语音系统算法! 你认真思考过你的共享软件为什么赚不了钱吗? 请问在那里可以找到ratioal2001的破解 在ado中是调用大型数据库是sql的select from效率高还是调用存储过程效率高 请问ProCoffee99(冬月)怎样将SringGrid复制到一个TStringList中 大家都在玩什么游戏?有没有好的游戏推荐给小弟呢? 若方程组3x+y=1+3a,x+3y=1-a的解满足x+y=0,求a的取值 已知二次方程3x²-(2a-5)x-3a-1=0有一个根为2,求另一个根拜托各位了 3Q 方程x+1分之1等于x-1分之2的解为 a若方程组{3x+y=1+3a x+3y=1-a的解满足x+y>0,则a的取值范围是( ) 已知x的平方加3x-1=0求x的平方+x的负二次方 x+1分之2等于2是 已知方程组3x-4y=3a-6,x+3y=2a+7的解x,y都是正数,且x的值大于y的值,求a的取值范围 已知关于x的二次方程x^2-(k-1)x-3x-2=0的两个实数根的平方和为17,求k的值已知a,b分别满足a^2-2ma-m^2=0和b^2-2mb-m^2=0,则b/a+a/b的值是多少? 关于x的方程a/x+1=1的解是负数,则a的取值范围是 已知2x+3y=a+2,且3x-4y=3a-1,若XY =0,求a的取值范围 .不是xy=0。应该是xy>=0。 a为何值时,方程2x+1/3a=x-1的解满足2x+3=7?a为何值时,方程2x+1/3a=x-1的解满足2x+3=7?5点之前,帮帮啊 若关于x的分式方程x+2分之2-x+2分之a等于1的解为负数,则a的取值范围是? 方程4(3-2x)+3a+2=7-4a-3(x-5)的解不比2a+1小,求a的取值范围 已知关于x的方程2x-3a=1的解是x-3,那么a的值是 关于x的方程x分之1等于1+x分之2+a的解是负数求a的取值范围 已知关于x的方程4(3-2x)+3a+2=7-4a-3(x-5)的解不小于2a+1,求a的取值范围kkkkk 已知关于x的方程x-4/2-2x-3a/5=1和2a+x/4-x-2/3=1有相同的解,则解是 如果关于x的方程:(1-m)x=1-2x的解是负数,则m的取值范围是—— 已知关于X的方程4(3—2X)+3a+1=5—4a+3(X—5)的解不比2a—1小,求a的取值范围? 已知方程2x+3a=4 与3x+5=2的解相同 a= 若关于X的方程x分之A+B +B分之A等于-1有唯一的解,试确定ab应满足的条件 已知方程4(3-2x)+3a+2=7-4a-3(x-5)的解不比2a+1小,求a的取值范围 关于x的方程5x-3a=2x-7的解是负数,试求a的取值范围. 已知关于x的方程a分之1+x分之a=b分之1+x分之b(a不等于B)x= 已知关于X的方程3a+x=a\2x+3的解为x=4,求a-2a+3a-4a+5a-6a+ +99a-100a的值 如果关于x的方程5x+3a=2x-7的解是负数,试求a额取值范围 解下列关于X的方程:a分之x-b分之x=1(a不等于b) 已知关于x的方程4(x+2)-2=5+3a的解不小于方程(3a+1)/3=a(2x+3)/2的解,求a的取值范围. 如果代数式关于x的方程5x-3a=2x-7的解是负数,试求a的取值范围我算出来是a<3分之10 方程(x+a分之一)-(x+b分之一)等于(x+c分之一)-(x+d分之一)如题.条件是:a.b.c.d.表示不同的数,且a+d=b+c.这个方程怎么解,我解的时候怎么成0等于什么什么了.我是把左边,右边分别通分的(x+a)(x 已知关于x的方程3(x+2)-2=7+3a的值不大于(5a+1)/5 x=(2x+3)a/2的解,求a的取值范围 解方程 (x+0.8)÷6=7.2 求方程的解 解关于X的方程a分之b+x=b分之x-a(a不等于b)!最好今天解决夯! 已知关于x的方程ax^2-(2a+1)x+3-3a=0的解都大于1,则a的取值范围是答案是0≤a<0.5老师是用△≥0,韦达定理做的 2号答对x道,10x-(8-x)*6=64,x=7; 方程 怎么解 x加上X等于48,用方程表示数量关系,并求出解! 如果关于x的方程3(x+4)-4=2a+1的解大于方程4a+1/4 x=a(3x-4)/3的解,求a 的取值范围 6,7,8三题,用方程解 买18个x元的包子,花了9元.请用方程表示下面的数量关系,并求方程的解是小学新课程学习与测评 人教版 2010秋季使用 题目是解方程(2)的“练一练”第1大题的第2小题. 已知关于x的方程:4(x+2)-2=5+3a的解不小于方程(3a+1)x/3=a(2x+3)/2的解,求a的取值范围. 当K为何值时,分试方程x除x-1+k除x-1=x除以x+1有增根急 用方程表示下面的数量关系.x的三倍比25多4 已知方程2/3x-3k=5(x-k)+1的解为非负数,求k的取值范围 当k的值等于____时,关于X的方程k除以(x-3)+2=(4-x)除以(x-3)会产生增根 18与x的3.5倍的和是39,用方程表示他的数量关系是( ),这个方程的解是( ) 关于x的方程2/3x=5(x-k)+3k+1的解是负数,求k的取值范围. 关于x的方程 x-8分之x-7 - 8-x分之k = 8 ,有增根,则k的值?k的值为什么是-1?怎么求? x+35=91解方程五年级是不是x+35-35=91-35x=56 已知关于X·y的方程组2x+y=2k+1 3x-2y=k-1的解满足x-3y<5求k的取值范围 怎么算 若方程1+2k除以9-(x的平方=k除以x-3有增根,则k=? 用方程表示等量关系x 加上35等于91 诺关于X的方程x+2=A和2X-4=3A有相同的解,则A=?急 当K为何值时,方程组3x-y=2k和x+2y=3k-14的X、Y互为相反数? 当K是什么值时,分式方程6除以x-1=x+k除以x(x-1)-3除以x有增根? 已知方程组2x-3y=2-3a,3x-4y=2a-1的解满足x>0,y 已知关于x,y的方程组 2x+y=2k+1,3x-2y=3k-9的解满足x小于y,求k的范围. 三分之二x加七分之五x等于五加七分之25 已知方程组{2x-4y=2-3a 3x-4y=2a+1 的解满足{x>0 y 已知二次方程3x²-(2a-5)x-3a-1=0有一个根为x=2,求另一个根并确定a的值 若方程3乘以(2x-1)等于2-3x的解,与关于x的方程6二等于二乘以括号加三的解相同,则已知a—3绝对值+负b+5的绝对值+c—2的绝对值等于0则,2a+b+c的绝对值等于-九分之五
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn