欢迎来到天天文库
浏览记录
ID:9009226
大小:29.50 KB
页数:3页
时间:2018-04-14
《在pb中控制数据窗口列的修改属性》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、<转>在PB中控制数据窗口列的修改属性在编制管理信息应用系统中,一般都会遇到一个共同问题,那就是如何根据不同情况去控制表中的数据列,比如对于同一DATAWINDOW不同的用户有不同的操作(如对于数据录入人员可以更改数据,而对于查询人员一般不能更改数据),下面就以一个简单的工资表为例来说明利用PB如何在DATAWINDOW中控制列的修改方式。工资表基本列如下:代码姓名工作时间基础工资浮动工资岗位工资知识分子补贴其它工资codenameworkdatabasesamovesastationsabtothersacharvarcharchardecimaldecimaldeci
2、maldecimaldeciaml在PB中有两种方式可控制列属性,一是静态方式,另一种是动态方式实现。所谓静态方式就是在列的属性上通过选项实现。所谓动态方式就是利用编程实现。现分别给予介绍:一、静态方法(1)在datawindow中选中某列后点MOUSE右键,选“properities”后系统弹出一标签,选中“Edit”标签,将“DisplayOnly”选项制为有较;(2)或者选中“Expression”标签,在“ProtectExpress”中填入“1”;(3)或者选中“Expression”标签,在“ProtectExpress”中填入条件表达式,如工作时间不满一年的
3、人员不能修改,则写入“if(daysafter(date(workdate),today())<=365,1,0)”;(4)在datawindow中,将某列的TabOrder值制为0,则该列因得不到焦点而不能被修改;(5)在DataWindowPainter状态下选取Rows菜单,再选取UpdateProperties,弹出SpecifyUpdateProperties对话框,将AllowUpdates设为空。二、动态修改方法(1)将整个Datawindow设置为保护方式:利用DataWindowObject的ReadOnly属性可以将整个Datawindow设置为保护方
4、式。语法为:dw_1.Object.DataWindow.ReadOnly=value或dw_1.Modify(“DataWindow.ReadOnly{=value}”),其中:value表示Datawindow是否为只读(read-only)状态,它有两个取值:Yes和No。Yes表示使Datawindow为read-only;No则相反,默认值是No。例如:如果要使Datawindow设置为保护方式,可以在相应事件的脚本中包含下列代码:dw_1.Modify(“DataWindow.ReadOnly=Yes”)或者为:dw_1.Object.DataWindow.R
5、eadOnly=Yes(2)只保护Datawindow的某些列方法一:利用列的Protect属性语法为:dw_1.Object.name.Protect=integer或dw_1.Modify(“columnname.Protect{=integer}”)。参数说明:cloumnname:为要保护的列名;integer:为该列的保护状态,值为0或False时该列不受保护;值为1或True时该列受到保护。例如,要将列name设置为保护状态,则相应的代码为:dw_1.Object.name.Protect=1或者为:dw_1.Moidfy(“name.Protect=1”)方
6、法二:利用列的TabSequence属性,在程序执行时可以根据需要将该列的TabOrder置为0,从而达到保护的目的。语法为:dw_1.Object.name.TabSequence=number或dw_1.Modify(“columnname.TabSequence{=number}”)参数说明:columnname:要保护的列名;number:该列的TabOrder值(0-32000)。例如,要将列name设置为保护状态,相应的代码为:dw_1.Object.name.TabSequence=0或者:dw_1.Modify(“name.Tabsequence=0”)方
7、法三:利用修改列的EDIT属性中的DisplayOnly属性值。语法为:dw_1.Object.columnname.Edit.DisplayOnly=value或dw_1.Modify(“columnname.Edit.DisplayOnly{=value}”)参数说明:columnname:要保护的列名;value:表示该列是否为只显示(DisplayOnly)状态,它有两个取值:Yes和No。Yes表示不允许用户输入数据(只显示):No则相反,默认值是No。例如:如果要使列name设置为只显示,可以在相应事件的脚本中包含
此文档下载收益归作者所有