VFP查询系统实现技巧六则

VFP查询系统实现技巧六则,第1张

VFP查询系统实现技巧六则,第2张

用VFP6.0编写完整的应用程序时,查询系统往往是必不可少的一部分,开发一个优秀的查询系统需要大量的应用技巧。由于工作原因,作者经常开发查询系统模块。现在,我将个人编程中总结的一些技巧介绍给大家,希望对读者的应用开发有所帮助。

任务进度条的实现

在查询的过程中,如果有很多数据,用户需要等待,查询系统应该有进度条显示,这样系统才能更加规范。具体实现方法如下:

1.选择VFP系统菜单工具中的选项栏,会弹出选项窗口。单击窗口中的ActiveX控件栏,将任务进度条控件Microsoft进度条控件5.0版(SP2)添加到ActiveX工具箱中。

2.在表单控件的工具栏中选择“ActiveX控件”,将控件Microsoft进度条控件6.0版添加到查询的表单Form1中,并将其属性Max值设置为1000。

3.在数据查询程序代码后添加以下代码:

I = 1to 1000
for j = 1to 2000
j = j+1
end for
this form . ole control 1 . value = I
I = I+1
end for,0+64)
this form . release
clear events
通过该设置,如果查询需要较长时间,查询进度条会向用户显示查询任务的运行状态。

用宏命令实现组合查询

在组合查询中,通常会有很多组合项需要查询。如果每一项使用不同的变量,编程会非常繁琐。作者使用宏命令轻松实现了查询组合条件。具体实现方法是在查询按钮中添加以下代码:

本地cFilter,nCnt,cCondition
FOR nCnt = 1到此表单。control count
IF TYPE(' this form。控制(nCnt)。controlSource') "U" THEN
IF!空(THISFORM。控制(nCnt)。ControlSource)和;
键入(' THISFORM。控制(nCnt)。value)))“U”那么cCondition=THIS。Parent.parseCondition(THISFORM。控制(nCnt)。值,这种形式。控制(nCnt)。controlSource)
IF!empty(c condition)then
c filter = c filter+" and " c condition
endif
endif
end for
通过此设置,虽然有多个查询条件,但查询条件的组合

删除查询表中的空记录。

使用类查询(_dataquery.vcx)时,会在要查询的表的末尾自动插入一条空记录。但是,在实际的网格表显示中,我们不想显示空记录。下面是解决这个问题的详细步骤:

1.在主程序或窗体对象的Load事件中输入以下代码:

打开删除

2.在查询结束代码后输入以下代码:

这种形式。恢复精神

&&&&刷新表单

去底部

删除下一个1

&&&&因为当前表中增加了一条空记录,实际应用中应该删除。

这种形式。网格1 .列1.Setfocus

转到顶部

Thisform.grid1.refresh

& & & & &删除一条记录后,网格表要及时刷新。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » VFP查询系统实现技巧六则

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情