用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心编程技巧VisualBasic

在VisualBasic中显示动态运行进度

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 19:48:51
在安装WINDOWS应用程序时,常有状态条来动态显示安装的进度。这种动态显示程序运行进度的方法在WINDOWS许多应用程序中都有应用。这项技术在WINDOWS应用程序开发中有其重要地位。它表示一种过程的指示。WINDOWS规定:当一个操作需2~3秒时,而用户在此操作完成前无法继续操作时,应在不可访问窗口上显示沙漏光标,示意用户等待。若这一操作持续更长的时间,则应使用动态显示的时间指示器。并有完成的进度百分比,暂停、恢复和取消等按钮以及其他提示信息。用Visual Basic实现这一功能是极其简单的,其方法有二。列举如下:
1. 使用图片框Picture Box。
用一简单的循环语句控制图片框的宽度增长,即可显示动态增长过程。可再加一个文本框以显示提示信息。一个简单的示例如下:
Form1: Caption:进度显示器
Picture1: backcolor: RGB(255,0,0)
Width: 1
borderstyle: 0
text1: borderstyle: 0
Sub Form_Load ( )
Picture1.Width = 1
End Sub
Sub Form_Click ( )
For i = 1 To 1000
Text1.Text = Int(i / 10) & " " & "%"
Picture1.Width = i
Next i
End Sub
这样就可获得用百分比表示的进度指示器。
2.使用专业版VB中的三维面板3D Panel Control
首先要用VB菜单中的File—Add File…的命令将Threed.vbx文件从WINDOWS的SYSTEM目录中加到当前工具箱中来,这样你会发现工具箱中出现了一系列的三维工具。其中三维面板3D Panel Control具有动态显示进度的功能。有关此功能的属性有:
FloodColor 设置面板的颜色以区别与背景色;
FloodType 表示动态显示的方式。各参数的意义如下:
0 没有状态条进行显示;
1 面板中将用FloodColor颜色从左到右递增显示变化状态;
2 面板中将用FloodColor颜色从右到左递增显示变化状态;
3 面板中将用FloodColor颜色从上到下显示变化状态;
4 面板中将用FloodColor颜色从下到上显示变化状态;
5 面板中将用FloodColor颜色以圆形从中心向外扩展显示变化状态;
FloodShowPct 设定在状态显示中是否显示百分比的变化。设为TRUE则表示显示百分比。
FloodPercent 设置或返回百分比的数值显示,仅在程序中设置,设计中无效。
下面给出一个简单的例子,当单击按钮时,面板就动态显示百分比变化:
Form1: caption: 进度显示
Command1: caption: 安装
panel3d1: BevelInner = 1
BevelOuter = 2
BevelWidth = 2
ShadowColor = 1
FloodType = 1
FloodShowPct = True
FloodColor = RGB(0, 0, 255)
Sub Form_Load ( )
panel3d1.BevelInner = 1
panel3d1.BevelOuter = 2
panel3d1.BevelWidth = 2
panel3d1.ShadowColor = 1
End Sub
Sub Command1_Click ()
For i = 0 To 100
panel3d1.FloodType = 1
panel3d1.FloodShowPct = True
panel3d1.FloodColor = RGB(0, 0, 255)
panel3d1.FloodPercent = i
Next i
End Sub
这样就生成了一个以百分比显示进度的指示器,其三维界面标准而美观,通过用程序控制三维面板的FloodPercent属性,可以设计出更加符合WINDOWS标准的安装界面,将它应用到自己开发的WINDOWS应用程序中,一定会为自己的应用程序增色不少。

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:10,234.38000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号