腾跃计算机二级vfp培训,计算机二级:在VFP中实现进度条

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

===================

也可以用容器+shape+txtlabel自己制作进度条

进度条对象.init

THIS.BarShape.Height = THIS.Height

THIS.BarShape.Width = 0

THIS.TxtLabel.Alignment = 2

THIS.TxtLabel.Left = (THIS.Width-THIS.TxtLabel.Width)/2

THIS.TxtLabel.Top = (THIS.Height-THIS.TxtLabel.Height)/2

THIS.TxtLabel.Caption = "0%"

THIS.Percent=0

进度条对象.show

LPARAMETERS lpPercent

*--合法性检验

IF lpPercent<0

lpPercent=0

endif

IF lpPercent>100

lpPercent=100

ENDIF

THIS.Percent = lpPercent

THIS.BarShape.Width = THIS.Width*(lpPercent/100)

THIS.TxtLabel.Caption = ALLT(STR(lpPercent))+"%"

THIS.Refresh

使用:

THISFORM.ProgressBar1.Show(i)

此处i应当是任务的相对数

比如:i=已经处理记录数/总记录数*100

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值