Foxtable(狐表)用户栏目专家坐堂 → 菜单可见设置


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

主题:菜单可见设置

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


加好友 发短信
等级:幼狐 帖子:120 积分:1007 威望:0 精华:0 注册:2015/8/31 20:26:00
菜单可见设置  发帖心情 Post By:2016/2/18 14:28:00 [只看该作者]

请教各位大神, 我用狐表做了一个查询报表工具,保留了原来的菜单设计—主菜单—功能区—Table-Table-Query查询表工具,希望设置用户权限,使用管理员登陆的时候,可见,其他登陆的时候不可见,如何做?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/18 14:38:00 [只看该作者]

 登陆的时候隐藏即可。

 

RibbonTabs("Table").Groups("Table").Items("Query").Visible = False


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


加好友 发短信
等级:幼狐 帖子:120 积分:1007 威望:0 精华:0 注册:2015/8/31 20:26:00
  发帖心情 Post By:2016/2/18 15:30:00 [只看该作者]

如下面红色字体部分内容,设置后所有的都不可见,请教

 

Dim UserName As String = e.Form.Controls("UserName").Value
Dim dr As DataRow
If UserName = ""  Then
    Messagebox.show("请选择用户!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Return
End If

If User.Name <> "管理员" Then
    RibbonTabs("Table").Groups("Table").Items("Query").Visible = False
Else
    RibbonTabs("Table").Groups("Table").Items("Query").Visible = True
End  If

dr = _UserTable.SQLFind("[Name] = '" & UserName & "'")
If dr Is Nothing Then
    Messagebox.show("此用户不存在!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Return
End If
If e.Form.Controls("PassWord").Value = dr("Password") Then
    _UserName = UserName
    _UserGroup = dr("Group")
    e.Form.Close
Else
    Messagebox.show("密码错误!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If


'
For Each t As Table In  Tables
    t.Visible = True
    t.AllowEdit = True
    For Each c As Col  In t.Cols
        c.Visible =  True
        c.AllowEdit =  True
    Next
Next
For Each dc As DataRow In DataTables("授权表").Select("用户名 = '" & _username & "'" )
    If dc.IsNull("列名") Then
        Tables(dc("表名")).Visible = Not dc("不可见")
        Tables(dc("表名")).AllowEdit = Not dc("不可编辑")
    Else
       
       
        Tables(dc("表名")).Cols(dc("列名")).Visible = Not dc("不可见")
        Tables(dc("表名")).Cols(dc("列名")).AllowEdit = Not dc("不可编辑")
    End  If
Next
Tables("授权表").Visible = (_UserGroup = "管理员")


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/18 15:32:00 [只看该作者]

If _UserGroup <> "管理员" Then
    RibbonTabs("Table").Groups("Table").Items("Query").Visible = False
Else
    RibbonTabs("Table").Groups("Table").Items("Query").Visible = True
End  If

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


加好友 发短信
等级:幼狐 帖子:120 积分:1007 威望:0 精华:0 注册:2015/8/31 20:26:00
  发帖心情 Post By:2016/2/18 17:38:00 [只看该作者]

解决了,感谢红袍大师

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


加好友 发短信
等级:幼狐 帖子:120 积分:1007 威望:0 精华:0 注册:2015/8/31 20:26:00
  发帖心情 Post By:2016/2/24 15:47:00 [只看该作者]

红袍大师,我想让管理员可以察看相应控件,其他用户不可以,但是会跳错,说不存在名为"Addrow"的项目

 

If _UserGroup <> "管理员" Then
RibbonTabs("Table").Groups("Table").Items("Query").Visible = False
RibbonTabs("Common").Groups("Data").Items("Addrow").Visible = False
RibbonTabs("Common").Groups("Data").Items("Deleterow").Visible = False
RibbonTabs("Common").Groups("Data").Items("Clonerow").Visible = False

Else
RibbonTabs("Table").Groups("Table").Items("Query").Visible = True
RibbonTabs("Common").Groups("Data").Items("Addrow").Visible = True
RibbonTabs("Common").Groups("Data").Items("Deleterow").Visible = True
RibbonTabs("Common").Groups("Data").Items("Clonerow").Visible = True
End  If


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/24 16:23:00 [只看该作者]

大小写要匹配才行

 

RibbonTabs("Common").Groups("Data").Items("AddRow").Visible = True


 回到顶部