以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 页面集合权限控制 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=152220) |
-- 作者:北狐 -- 发布时间:2020/7/9 19:24:00 -- 页面集合权限控制 在项目事件上AfterOpenProject录入 If User.Type = UserTypeEnum.User Then For Each dr1 As DataRow In DataTables("用户分组").Select("用户名 = \'" & User.Name & "\'" ) For Each dr As DataRow In DataTables("授权表").Select("用户组= \'" & dr1("用户组") & "\'" ) Forms(dr("窗体")).Controls(dr("控件")).Enabled = Not dr("不可编辑") Forms(dr("窗体")).Controls(dr("页面")).TabPages(dr("页面名称")).Enabled = Not dr("不可见") Next Next End If 弹二次窗分别报错如下 找不到名称为“”的控件! .NET Framework 版本:2.0.50727.8806 Foxtable 版本:2018.10.9.1 错误所在事件:项目,AfterOpenProject 详细错误信息: 未设置对象变量或 With 块变量。 Forms(dr("窗体")).Controls(dr("页面")).TabPages(dr("页面名称")).Enabled = Not dr("不可见") 设置为如下具体就没报错 Forms("主界面").Controls("TabControl1").TabPages("销售管理").Visible = Not dr("不可见") 求老师帮忙看下 |
-- 作者:有点蓝 -- 发布时间:2020/7/9 20:16:00 -- 1、指定窗口不存在此控件名称 2、"控件"、"页面"列肯定有空值 最后窗口的控制不应该放到afteropenproject,而是放到各个窗口的afterload处理自己窗口的框架
|