以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  编制指定列时禁用菜单按钮问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=123322)

--  作者:aza520
--  发布时间:2018/8/12 11:37:00
--  编制指定列时禁用菜单按钮问题
进入“窗口1”中“表A”的“项目名称”列,准备编辑时,禁用菜单中的“重复填充”按钮,编辑其它列则可以使用。请问,如何写代码,写在哪里?
--  作者:有点甜
--  发布时间:2018/8/12 21:38:00
--  

参考

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=103637&skin=0

 


--  作者:aza520
--  发布时间:2018/8/13 8:19:00
--  
在表的AfterSelChange事件设如下代码,想选择“项目名称”列时,禁用“重复填充”,其它列时,可以使用。下列代码是全部禁用了

Dim c As Col = e.Table.Cols(e.NewRange.ColSel)

Select Case c.name

    Case "项目名称"

        RibbonTabs("我的工作台").Groups("编辑功能").Items("重复填充").Enabled = False

End Select

--  作者:aza520
--  发布时间:2018/8/13 8:34:00
--  
老师,改成这样是可以了,但是切换回系统菜单时,会不断提示“菜单中不存在名为”我的工作台“的功能区”。
Dim c As Col = e.Table.Cols(e.NewRange.ColSel)
If c.Name = "项目名称" Then
    RibbonTabs("我的工作台").Groups("编辑功能").Items("重复填充").Enabled = False
Else
    RibbonTabs("我的工作台").Groups("编辑功能").Items("重复填充").Enabled = True
End If

--  作者:有点甜
--  发布时间:2018/8/13 8:42:00
--  
If SystemMenu = False Then
    Dim c As Col = e.Table.Cols(e.NewRange.ColSel)
    If c.Name = "项目名称" Then
        RibbonTabs("我的工作台").Groups("编辑功能").Items("重复填充").Enabled = False
    Else
        RibbonTabs("我的工作台").Groups("编辑功能").Items("重复填充").Enabled = True
    End If
End If