Foxtable(狐表)用户栏目专家坐堂 → [求助]禁用菜单权限没用


  共有4340人关注过本帖树形打印复制链接

主题:[求助]禁用菜单权限没用

帅哥哟,离线,有人找我吗?
kiooy
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:121 威望:0 精华:0 注册:2013/12/17 19:35:00
[求助]禁用菜单权限没用  发帖心情 Post By:2013/12/17 22:30:00 [只看该作者]

菜单的功能区、功能组以及所有的菜单组件,都有Visible和Enabled属性,这样我们可以根据登录用户的不同,隐藏和禁用某些菜单项目,实现菜单的授权。

示例一

我们增加一个用户“录入员”,如果该用户登录,隐藏“数据表”和“管理项目”两个功能区,并禁用杂项功能区的“执行SQL”和 “命令窗口”两个按钮。

第一步当然是增加一个名为“录入员”的用户,然后在菜单系统事件LoadUserSetting加入如下代码:

If User.Name = "录入员" Then
RibbonTabs(
"Table").Visible = False
RibbonTabs(
"Project").Visible = False
RibbonTabs(
"Other").Groups("Execute").Items("SQLExecute").Enabled = False
RibbonTabs(
"Other").Groups("Execute").Items("Command").Enabled = False
Else

RibbonTabs(
"Table").Visible = True
RibbonTabs(
"Project").Visible = True
RibbonTabs(
"Other").Groups("Execute").Items("SQLExecute").Enabled = True
RibbonTabs(
"Other").Groups("Execute").Items("Command").Enabled = True
End
If

 

我有一个普通用户,我不希望他编辑我的表结构,我从帮助文件里面找到这个代码,但是我复制后,却没有用处,也不提示错误。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/12/17 23:01:00 [只看该作者]

 第一句,user.name = "录入员",你这个普通用户的名字,如果叫录入员,就会隐藏菜单。

 回到顶部
帅哥哟,离线,有人找我吗?
kiooy
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:121 威望:0 精华:0 注册:2013/12/17 19:35:00
  发帖心情 Post By:2013/12/17 23:08:00 [只看该作者]

是的,我新建的用户叫做 普通, 我把代码里面的 录入员改成了 普通,但是没有用


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/12/17 23:11:00 [只看该作者]

 代码要写在LoadUserSetting事件里,然后你重新打开项目看看。

 回到顶部
帅哥哟,离线,有人找我吗?
kiooy
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:121 威望:0 精华:0 注册:2013/12/17 19:35:00
  发帖心情 Post By:2013/12/17 23:18:00 [只看该作者]

我就是写在里面的,我搅麻了···

 回到顶部
帅哥哟,离线,有人找我吗?
kiooy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:121 威望:0 精华:0 注册:2013/12/17 19:35:00
  发帖心情 Post By:2013/12/17 23:24:00 [只看该作者]

If User.Name = "普通" Then
RibbonTabs(
"Table").Visible = False
RibbonTabs(
"Project").Visible = False
RibbonTabs(
"Other").Groups("Execute").Items("SQLExecute").Enabled = False
RibbonTabs(
"Other").Groups("Execute").Items("Command").Enabled = False
Else

RibbonTabs(
"Table").Visible = True
RibbonTabs(
"Project").Visible = True
RibbonTabs(
"Other").Groups("Execute").Items("SQLExecute").Enabled = True
RibbonTabs(
"Other").Groups("Execute").Items("Command").Enabled = True
End
If

 


图片点击可在新窗口打开查看此主题相关图片如下:2013-12-17_23-22-50.jpg
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/18 8:32:00 [只看该作者]

报什么错? 最好能上个例子.

 回到顶部
帅哥哟,离线,有人找我吗?
kiooy
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:121 威望:0 精华:0 注册:2013/12/17 19:35:00
  发帖心情 Post By:2013/12/18 16:37:00 [只看该作者]

没有错,什么报错都没有,就是隐藏不了,我就建立另一个表格,然后按照文档说明 试验这个功能,不能用

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/12/18 16:38:00 [只看该作者]

没有道理,上例子.

 回到顶部
帅哥哟,离线,有人找我吗?
kiooy
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:10 积分:121 威望:0 精华:0 注册:2013/12/17 19:35:00
  发帖心情 Post By:2013/12/18 16:39:00 [只看该作者]

我查阅了这个问题,在论坛上,我看到一个 叫 狐狸爸爸的人 回复了别人的帖子,说是要把这功能做到登录按钮里面,我初学者,就不太懂这个含义了,我登录都是打开文件然后自动弹出一个登陆框就登录了,我才学几天。

 回到顶部
总数 17 1 2 下一页