标题:[原创]进度条控件_progressbar用法说明及示例
只看楼主
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
结帖率:100%
 问题点数:0 回复次数:4 
[原创]进度条控件_progressbar用法说明及示例


今天将用测试过的进度条控件_therm的用法简单说说。欢迎各位批评指正!

1.添加进度条控件
你建立一个表单之后,遇到需要较长时间处理任务的时候,
总是希望有一个提示用户进度的工具。
查找发现VFP提供了这样的工具,_therm.vcx。它不同于.ocx控件,
因此,不能使用菜单中工具和添加ActiveX控件的方法添加进度条。
正确的添加方法是:
(1)点击“表单控件”这个工具栏的“查看类”图标;
(2)弹出一个快捷菜单,单击添加;
(3)在安装了VFP的系统文件夹...\VFP98\FCC\
这个文件夹里找到可视类库“_therm.vcx”;
(4)经过上述过程,我们就可以在“表单控件”
工具栏里看到出现_thermometer和_progressbar两个控件,
将_progressbar这个控件添加到表单,至此进度条正确添加完成。

2.正确使用进度条控件
这个时候需要使用进度条。我们知道,进度条反映了任务处理的进度,
因此,我们必须知道任务的总数是多少,需要处理的进度如何表示,这些指
标如何在进度条控件中设置等问题。
先谈进度条的属性及方法。
(1)进度条的属性
ibasis:指定计算百分数时的基数。实际上就是指需要处理任务的总数。
ipercentage:指定更新显示时的百分数完成量。实际上就是当前进度。
iprogress:指定完成(iPercentage) 的百分数。通常这个值就是1=100%。
(2)进度条的方法
RESET 方法程序:
初始化进度条。
语法:RESET(m.ibasis)
返回值:无
参数:m.ibasis 指定从什么地方开始进行进度条显示。一般用0表示。
Complete 方法程序:
显示100%完整的进度。
语法:Complete(m.cTask)
返回值:无
参数:m.cTask 指定过程完成时的显示。
Update 方法程序
更新进度。
语法:Update(iProgress, cTask)
返回值:无
参数:
iProgress 指定进程增量。
cTask 指定需要显示的信息。
(3)举例说明:
假设需要处理10万个数据,目的是从第1个数据到第10万个数据进行处理。
进度就是这样安排的:
ibasis就是10万了,它表示需要处理的总数。
iprogress就是1了,它表示完成处理的百分数为100%。
Update过程输入1个参数,就是当前处理的数据号。
这样一个简单的进度条示例就是:

THISFORM._progressbar1.RESET(0)
nCnt=0
nTotal=1E5
THISFORM._progressbar1.iBasis=nTotal
THISFORM._progressbar1.iProgress=1
FOR nCnt=1 TO nTotal
THISFORM._progressbar1.UPDATE(nCnt)
ENDFOR

搜索更多相关主题的帖子: 示例 progressbar 控件 用法 进度 
2006-11-16 22:58
aaabbb
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2005-11-3
得分:0 
学习
2006-11-17 15:26
ma007n
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-4-24
得分:0 

这段代码应该在需要更新的按钮中吧?

2006-11-18 15:58
jyxfp
Rank: 2
等 级:论坛游民
帖 子:23
专家分:81
注 册:2013-2-9
得分:0 
学习了。
只是我的 Update 方法程序 只有一个参数
语法:Update(iProgress, cTask)
参数:
iProgress 指定进程增量。
cTask 指定需要显示的信息。  &&我的只接收一个参数,此参数无。
2014-09-02 22:28



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-103479-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.321162 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved