看实例学VFP:进度条控件2009-04-05 www.bianceng.cn 老马我们在使用Windows系统的时候,如果复制一个较大的文件或者是从网上下载东西,在复制或下载的过程中都会出现一个对话框,并且在该对话框中会有一个进度条来显示复制或下载的进度。在vfp可以使用进度条控件(ProcessBar)来实现类似的功能,有的场合下可以用到它,比如软件包含了数据备份的功能,可以用它来显示备份的进度。但是这个控件的使用不是必须的,使用它无非是可以让你编的东西看起来更专业些。进度条控件有几个比较重要的属性,如下:min:进度条的最小值,默认为0。max:进度条的最大值,默认为100。value:进度条的当前值,只写。这个属性很重要,进度条的动态变化就是通过给这个属性动态赋值来实现的。visible:指定进度条是可见还是隐藏。一般情况下对进度条控件的编程都需要使用循环,并且需要把循环的终值赋给进度条的max属性,把循环变量的当前值在循环体中赋给进度条的value属性,这样进度条才能动起来。本文来做一个关于进度条的小例子,运行界面如下图:

在上图中单击了“创建表”按钮后,会首先使用sql语句创建出一个表结构,然后使用循环语句向这个表中添加10000条记录,从开始到完成的整个过程会用进度条体现出来,大概需要20秒左右的时间。制作过程如下:一、新建表单,将其caption属性值设置为“编程入门网-ProcessBar控件的使用”,AutoCenter属性值设置为.t.,保存为“表单1.scx”。二、向表单上添加一个命令按钮控件command1,将其caption属性值设置为“创建表”。三、向表单上添加进度条控件:进度条控件(ProcessBar)也是一个ActiveX控件,使用时需要注册一下,方法请参考:(进度条控件的ActiveX控件名为“Microsoft ProcessBar Control”)。完成注册后向表单上添加一个进度条控件,为了书写代码的方便,我们把它的name属性值由默认的“Olecontrol1”修改为“processbar1”。四、参照上图适当调整各控件的位置及表单的大小。五、添加事件代码:1、表单的init事件代码:set safety off
thisform.processbar1.visible=.f.2、表单的unload事件代码:set safety on
close all
delete file 表1.DBF3、命令按钮“创建表”(command1)的click事件代码:
thisform.processbar1.visible=.t.&&使Processbar可见thisform.processbar1.max=10000 &&确定进度条(ProcessBar)最大值为表的记录数create table 表1 (字段1 N(10),字段2 N(10),字段3 N(10))for i=1 to 10000 appen blank replace 表1.字段1 with i,表1.字段2 with i*2,表1.字段3 with i*3 thisform.processbar1.value=iendforthisform.processbar1.value=0thisform.processbar1.visible=.f.WAIT WIND "文件创建完毕!" AT 20,60 &&提示信息
六、运行“表单1.scx”。本例代码在Win2003+VFP6.0环境下调试通过。