登陆后动态读取MDIFORM菜单的问题,求高人指点

drh090108 2010-12-07 06:02:27
权限表:用户名称,菜单名称
Private Sub MDIForm_Load()
Call MakeCenter(Me)
MDIForm1.Caption = "欢迎使用指标管理系统!" & yhmc
lj.RecordSource = "select * from yhqx where 用户名称='yhmc'"
lj.Refresh
If lj.Recordset.RecordCount > 0 Then
While Not lj.Recordset.EOF
lj.Recordset.Fields("菜单名称").Enabled = True
lj.Recordset.MoveNext
Wend
End If
lj.Recordset.Close
End Sub
总觉得有问题,运行也报错 .Enabled未找到方法和函数,求高人指点这个咋弄哦?
就是想根据权限确定哪些菜单可用
...全文
76 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
drh090108 2010-12-11
  • 打赏
  • 举报
回复
问题已经解决,使用菜单数组即可动态创建菜单
但是同一个菜单数组只能在同一级菜单里使用,求动态创建多级菜单的方法
drh090108 2010-12-10
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 dbcontrols 的回复:]
你可以把菜单的某些相同权限的分成一组,使用相同的名字,然后给不同的index值,从0开始,这样就是菜单数组,就可以用循环了,比如我的菜单名字都是a

VB code
Private Sub MDIForm_Load()
For i = 0 To MDIForm1.a.Count - 1
MDIForm1.a(i).Enabled = False
Nex……
[/Quote]

用你的方法运行的时候还是提示说MDIFORM1.a未找到方法和数据成员
  • 打赏
  • 举报
回复
if Recordset.Fields("Enabled") = "Y" 或 ture then
drh090108 2010-12-08
  • 打赏
  • 举报
回复
那咋个实现这个功能啊????
  • 打赏
  • 举报
回复
Recordset.Fields 没有enabled 的属性。
你要得到要求?
dbcontrols 2010-12-08
  • 打赏
  • 举报
回复
你可以把菜单的某些相同权限的分成一组,使用相同的名字,然后给不同的index值,从0开始,这样就是菜单数组,就可以用循环了,比如我的菜单名字都是a
Private Sub MDIForm_Load()
For i = 0 To MDIForm1.a.Count - 1
MDIForm1.a(i).Enabled = False
Next i
End Sub

  • 打赏
  • 举报
回复
我不知道你的要求,你的代码看起来糊涂。
你先讲下标的结构和你的要求。
drh090108 2010-12-08
  • 打赏
  • 举报
回复
其实我就是想用一个循环来判断读取的菜单项
drh090108 2010-12-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 patrickkong 的回复:]
if Recordset.Fields("Enabled") = "Y" 或 ture then
[/Quote]
这样好像不行吧,Recordset.Fields("Enabled") 的话根本没有这个字段,而且可以等于TURE?

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧