以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  权限设置按钮错误解决  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=57379)

--  作者:tuyage
--  发布时间:2014/9/23 21:04:00
--  权限设置按钮错误解决
如下面的图,我想让下面授权界面的按钮,除开发者和管理员以外其他的用户无权限,可如下设置后,每次都会弹出错误提示,但是关闭错误提示后还是可以打开窗口,而且按钮设置其他用户无权限也是有效的,哪里问题各位帮帮。


--  作者:有点甜
--  发布时间:2014/9/23 21:05:00
--  
 图片或例子或代码发上来。
--  作者:tuyage
--  发布时间:2014/9/23 21:05:00
--  
为何图片没有显示?

图片点击可在新窗口打开查看此主题相关图片如下:1.bmp
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.bmp
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:3.bmp
图片点击可在新窗口打开查看



--  作者:tuyage
--  发布时间:2014/9/23 21:06:00
--  
图片3楼的。帮忙看看
--  作者:tuyage
--  发布时间:2014/9/23 21:08:00
--  
图片3楼的。帮忙看看
--  作者:有点甜
--  发布时间:2014/9/23 21:08:00
--  
 完整代码贴上来
--  作者:tuyage
--  发布时间:2014/9/23 21:09:00
--  

窗口AfterLoad代码:


DataTables("授权").AllowEdit = False  \'窗口加载表后默认不可编辑,需点击编辑或新增后方可编辑修改

If User.Type <> UserTypeEnum.User Then \' 如果是开发者或者管理员

    e.Form.Controls("Button1").Enabled = True

    e.Form.Controls("Button2").Enabled = True

    e.Form.Controls("Button3").Enabled = True

    e.Form.Controls("Button4").Enabled = True

    e.Form.Controls("Button5").Enabled = True

    e.Form.Controls("Button6").Enabled = True

    e.Form.Controls("Button7").Enabled = True

    e.Form.Controls("Button8").Enabled = True

    e.Form.Controls("Button9").Enabled = True

    e.Form.Controls("Button10").Enabled = True

    e.Form.Controls("Button01").Enabled = True

    e.Form.Controls("Button02").Enabled = True

    e.Form.Controls("Button03").Enabled = True

    e.Form.Controls("Button04").Enabled = True

    e.Form.Controls("Button11").Enabled = True

    e.Form.Controls("Button12").Enabled = True

\'则具备所有权限

Else

    e.Form.Controls("Button1").Enabled = False

    e.Form.Controls("Button2").Enabled = False

    e.Form.Controls("Button3").Enabled = False

    e.Form.Controls("Button4").Enabled = False

    e.Form.Controls("Button5").Enabled = False

    e.Form.Controls("Button6").Enabled = False

    e.Form.Controls("Button7").Enabled = False

    e.Form.Controls("Button8").Enabled = False

    e.Form.Controls("Button9").Enabled = False

    e.Form.Controls("Button10").Enabled = False

    e.Form.Controls("Button01").Enabled = False

    e.Form.Controls("Button02").Enabled = False

    e.Form.Controls("Button03").Enabled = False

    e.Form.Controls("Button04").Enabled = False

    e.Form.Controls("Button11").Enabled = False

    e.Form.Controls("Button12").Enabled = False

End If 

\'上面是可以操作的权限的用户


Dim trv1 As WinForm.TreeView = e.Form.Controls("TreeView1")

Dim trv2 As WinForm.TreeView = e.Form.Controls("TreeView2")

trv1.BuildTree("授权","分组|权限")

For Each u As UserInfo In Users

    If u.Type = UserTypeEnum.User Then

        If trv2.Nodes.Contains(u.Group) = False Then

            trv2.Nodes.Add(u.Group)

        End If

        trv2.Nodes(u.Group).Nodes.Add(u.Name)

    End If

Next

Trv1.Nodes(0).Expand()

trv2.ExpandAll()


--  作者:tuyage
--  发布时间:2014/9/23 21:13:00
--  
甜老师,怎么样,是哪里的问题
--  作者:有点甜
--  发布时间:2014/9/23 21:14:00
--  
 这段代码不会报这个错,完整的报错是怎样的?是不是提示什么控件不存在?
--  作者:tuyage
--  发布时间:2014/9/23 21:18:00
--  
就是我上面图片1的错误提示,

最后那句话:未将对象引用到实例。没有提示控件不存在,我开始也以为是控件不存在,仔细检查后还是不是那个问题,但是如果我把上面控制窗口按钮权限的那段代码删除就没有错误提示。。你看下面的图是按钮的名称,是没有错误的啊



图片点击可在新窗口打开查看此主题相关图片如下:4.bmp
图片点击可在新窗口打开查看