vfp中grid增强专集1

vfp中grid增强专集1

ID:33603772

大小:59.80 KB

页数:14页

时间:2019-02-27

vfp中grid增强专集1_第1页
vfp中grid增强专集1_第2页
vfp中grid增强专集1_第3页
vfp中grid增强专集1_第4页
vfp中grid增强专集1_第5页
资源描述:

《vfp中grid增强专集1》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、VFP中GRID增强专集1grid是VFP中最重要的控件之一,可惜从FOX6-9对GRID的增强力度太小只好自己来了.表格控件对程序编制极重要,大家都来出一分力吧.以前的好东东,也请摘录在此.先来一下,我们的_grid基类.适用于FOX9,FOX8可能也可以.可能有BUG的,我的GRID多数用于REMOTEVIEW,用于DBF不知有无问题.一些功能来源于坛子上的FOX朋友,至谢!有空还打算更多功能,如:打印,FBILO的离开GRID前强制REPLACE等功能:*支持header双击*header双击排序

2、*在焦点离开grid后,还能取得光标所在COLUMN*自动记录列宽列位置行高等,自动恢复*支持双行表头耦合情况:用到了双层表头类,表单缩放类,一些系统通用函数*--Class:_grid(d:yxworkshoponair粤信通用帐务_正本liblib_粤信_基本.vcx)*--ParentClass:grid*--BaseClass:grid*--TimeStamp:11/23/0405:49:13PM*DEFINECLASS_gridASgridOLEDropMode=1Height=2

3、00Width=320*--是否自动记录列位置、宽度并恢复_l记录列宽并恢复="恢复=(.t.)"o双行表头="?=.F."_l允许双击header排序="判?=(.t.)"oheader双击_上一个header="er=(.null.)"_l恢复列顺序="序=(.t.)"*--当前或离开grid前,光标所在的列_o光标所在的列="牧?=(.null.)"*--(不算disable和notvisible的)在最后那列,如按回车,则填入dnArrow以换行此功能未有_l在最后一列按回车则换行="车则换行=

4、.T."Name="_grid"*--使区别于其他grid,用于save/load列宽,不斌值则按form.caption+数据源_cgrid标识=.F.*--指定生成多行表头及格式。值格式如:3-3-上月,6-2-本月。列可调宽但位置不可调了_c双行表头定义串=.F.*--指出光标所在的列,当grid无焦点时仍有效_n当前列=.F._n当前列_相对=.F._n当前行=.F._n当前行_相对=.F.PROCEDUREl记录列宽IFnotthis._l记录列宽并恢复RETURNENDIF*-保存到系统_参

5、数*-列宽,列顺序,headerheight,rowHeightLOCALcTmp,c列标识,n列宽,n列顺序,icTmp=''FORi=1TOthis.ColumnCounto=this.Columns(i)c列标识=ALLTRIM(o.ControlSource)+ALLTRIM(o.comment)&&o.header1.captionn列宽=o.widthn列顺序=o.columnOrdercTmp=cTmp+c列标识+','+ALLTRIM(STR(n列顺序))+','+ALLTRIM(STR

6、(n列宽))+';'NEXTcTmp=goApp.fn._chr._csetmacro('','HeaderHeight',STR(this.HeaderHeight))+;goApp.fn._chr._csetmacro('','RowHeight',STR(this.RowHeight))+;goApp.fn._chr._csetmacro('','LockColumns',STR(this.LockColumns))+;goApp.fn._chr._csetmacro('','columnCont

7、rolSource+comment-columnOrder-columnWidth',cTmp)goApp.fn._sql._lSetSysPara(this._cgrid标识,cTmp)ENDPROCPROCEDUREl恢复列宽LOCALi,cTmp,cHCC,nHeaderHeight,nRowHeight,j,nOrder,c列标识,cWidthcTmp=goApp.fn._sql._uGetsyspara(this._cgrid标识)IFISNULL(cTmp)RETURNENDIFnHeade

8、rHeight=VAL(goApp.fn._chr._cGetMacro(cTmp,'HeaderHeight'))nRowHeight=VAL(goApp.fn._chr._cGetMacro(cTmp,'RowHeight'))nLockColumns=VAL(goApp.fn._chr._cGetMacro(cTmp,'LockColumns'))IFNOTEMPTY(this._c双行表头定义串)IFnHeaderHeight>0t

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。