如何将VFP的grid设置成点击标题过滤

2025-10-20 22:14:17

1、首先在表单中新建一个方法,命名为:headerclick

写入如下代码:

=AEVENT(aSourceObj, 0)oSourceObj = aSourceObj[1]cRowName=osourceobj.CAPTIONcgrid='thisform.grid1'            &&&&表格的名字

ogrid=&cgridcfilename=ogrid.RECORDSOURCE

IF EMPTY(cfilename) OR SELECT(cfilename)=0 RETURNENDIF

如何将VFP的grid设置成点击标题过滤

2、ogrid.RECORDSOURCE=''SELECT * FROM (cfilename) INTO CURSOR (cfilename+'_tmp')USE IN (cfilename)SELECT * FROM (cfilename+'_tmp') ORDER BY &crowname INTO DBF (cfilename)USE IN (cfilename+'_tmp')

ogrid.RECORDSOURCE=cfilenameSELECT(cfilename)GOTO TOPogrid.SETFOCUS

如何将VFP的grid设置成点击标题过滤

3、然后在表格的refresh(刷新方法)里写入如下代码:

cgrid='thisform.'+ALLTRIM(this.name)ogrid=&cgridFOR gnCount = 1 TO this.columncount  && header代理 cheader='this.column'+alltrim(str(gncount))+'.header1' oheader=&cheader oheader.tooltiptext='单击按本列值重新排序表格数据' BINDEVENT(oheader,"Click",thisform,"headerclick")NEXT

如何将VFP的grid设置成点击标题过滤

4、当表格装载数据后,刷新表格(运行方法thisform.grid1.refresh),即可将表格中header的click事件设置为自定义方法的代理。

如何将VFP的grid设置成点击标题过滤

5、当单击表格header时,即运行headerclick自定义方法,将表格数据源表重新排格。

如何将VFP的grid设置成点击标题过滤

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢