Office中国论坛/Access中国论坛
标题:
关于事件上与权限设定的问题
[打印本页]
作者:
williamwangc
时间:
2013-5-18 15:14
标题:
关于事件上与权限设定的问题
我模仿红尘如烟的通用开发平台的设置权限的函数并按照我的理解做了一段FUNCTION,并按照我的理解做了一些调整,并做了调试。
奇怪的是我功能函数放在按钮里面运行正常,但放到form.OnXxxx就不行了。
function如下:
Public Function fnintSetRightOfFormButton(strFormName As String, RightOfEdit As Boolean, RightOfAdd As Boolean, RightOfDelete As Boolean) As Integer
Dim ctl As Control
If fnblObjectExists("form", strFormName) = True Then
Forms(strFormName).AllowEdits = RightOfEdit
Forms(strFormName).AllowAdditions = RightOfAdd
Forms(strFormName).AllowDeletions = RightOfDelete
For Each ctl In Forms(strFormName)
If ctl.Name Like "cmd*Add*" And ctl.ControlType = acCommandButton Then
ctl.Enable = RightOfAdd
ElseIf ctl.Name Like "cmd*Edit*" And ctl.ControlType = acCommandButton Then
ctl.Enable = RightOfEdit
ElseIf ctl.Name Like "cmd*Del*" And ctl.ControlType = acCommandButton Then
ctl.Enable = RightOfDelete
End If
Next ctl
fnintSetRightOfFormButton = 1
Else
MsgBox "该窗体不存在"
fnintSetRightOfFormButton = -1
End If
End Function
复制代码
考虑到可能事件只能用sub,我把这个FUNCTION改成了一个无返回值的SUB,但还是无效。
在一个按钮的CLICK事件中写了这样的代码,如下:
Private Sub Command0_Click()
DoCmd.OpenForm "窗体2"
Forms("窗体2").OnOpen = "=fnsubSetRightOfFormButton ('窗体2' , False, False, False)"
复制代码
PS.fnsubSetRightOfFormButton是fnintSetRightOfFormButton的sub形式
另外fnblObjectExists("form", strFormName) 是我自写的另外一个自定义FUNCTION
作者:
todaynew
时间:
2013-5-18 18:00
在属性设置中只能调用Public Function。
作者:
williamwangc
时间:
2013-5-18 18:47
标题:
RE: 关于事件上与权限设定的问题
todaynew 发表于 2013-5-18 18:00
在属性设置中只能调用Public Function。
我用的是function,不过无返回值。请版主再看看。
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3