以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 窗口表权限 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=178913) |
-- 作者:denghui69986 -- 发布时间:2022/7/27 15:00:00 -- 窗口表权限 老师帮忙看看我这代码设置在窗口权限下面四列普通用户不可编辑,怎么部起作用。 Dim ctl As WinForm.Control = e.Sender Select Case ctl.BindingField Case "资料数据汇总.布料材质", "资料数据汇总.排版图", "资料数据汇总.用量", "资料数据汇总.实裁用量", "资料数据汇总.排版说明" If User.Name = "开发者" "管理员" Then ctl.ReadOnly = BooleanEnum.False \'允许编辑 Else ctl.ReadOnly = BooleanEnum.True \'禁止编辑 End If |
-- 作者:有点蓝 -- 发布时间:2022/7/27 15:06:00 -- If User.Name = "开发者" orelse User.Name = "管理员" Then |
-- 作者:denghui69986 -- 发布时间:2022/7/27 15:57:00 -- 还是不起作用,我关了所有从新登录其它普通用户号还是可以编辑 |
-- 作者:有点蓝 -- 发布时间:2022/7/27 16:04:00 -- 调试 Dim ctl As WinForm.Control = e.Sender msgbox(ctl.name & ": " & ctl.BindingField) Select Case ctl.BindingField Case "资料数据汇总.布料材质", "资料数据汇总.排版图", "资料数据汇总.用量", "资料数据汇总.实裁用量", "资料数据汇总.排版说明" msgbox(User.Name) If User.Name = "开发者" orelse User.Name = "管理员" Then msgbox(1) ctl.ReadOnly = BooleanEnum.False \'允许编辑 Else msgbox(2) ctl.ReadOnly = BooleanEnum.True \'禁止编辑 End If
|
-- 作者:denghui69986 -- 发布时间:2022/7/28 7:56:00 -- 不知是否窗口名称不对还是哪里原因不起作用,表是链接资料数据汇总,帮忙看看我截图, |
-- 作者:有点蓝 -- 发布时间:2022/7/28 8:36:00 -- 5楼截图的是窗口标题,不是窗口名称。 按4楼的方法调试,不起作用的时候弹出什么内容?
|
-- 作者:denghui69986 -- 发布时间:2022/7/28 9:40:00 -- 不知什么原因,按照下面说明改的, 要实现此目的,只需在窗口的全局事件的Enter事件中设置代码: Dim
ctl As WinForm.Control =
e.Sender |
-- 作者:有点蓝 -- 发布时间:2022/7/28 9:43:00 -- 按4楼的方法调试,有问题的时候msgbox弹出什么内容? |
-- 作者:denghui69986 -- 发布时间:2022/7/28 11:33:00 -- 不弹窗,就是普通账号进去一样可以修改编辑 |
-- 作者:有点蓝 -- 发布时间:2022/7/28 11:39:00 -- 看来我们都理解错了。我以为您要控制文本框等的录入。如果要控制表格的编辑,不应该使用这种用法,这个是用来控制文本框等控件的录入的。. 窗口的表格控件和普通表格一样,需要到表事件处理:http://www.foxtable.com/webhelp/topics/2255.htm
|