以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  根据当前列值,显示隐藏窗口按钮  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=72946)

--  作者:everybody
--  发布时间:2015/8/9 15:14:00
--  根据当前列值,显示隐藏窗口按钮
这是帮助里面的代码,意思是只有经历才显示部分按钮,


另一个方法是在窗口的AfterLoad事件设置代码,隐藏或禁用当前用户无权使用的按钮,例如我们在AfterLoad事件设置代码:

If User.Group <> "经理" Then
    e.Form.Controls(
"Button1").Enabled = False
    e.Form.Controls(
"Button3").Enabled = False
End


想改造那个判断句,即:



窗口(”窗口1“)中, if tables(”xx”).current("归档“)=false 的行,then


显示或隐藏相应的按钮,


如何写啊?




--  作者:大红袍
--  发布时间:2015/8/9 15:26:00
--  

去编写currentChanged事件。

 

If Tables("表A").current("归档") = False
    Forms("窗口1").Controls("Button1").Enabled = False
    Forms("窗口1").Controls("Button3").Enabled = False
End If


--  作者:everybody
--  发布时间:2015/8/17 0:17:00
--  

以下代码怎么会报错呢?奇怪了

 

--------------------------

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2014.11.11.1
错误所在事件:任务组,CurrentChanged
详细错误信息:
未将对象引用设置到对象的实例。

--------------------------

 

 

 

\'如果任务组归档列打勾的话,部分按钮失效
If e.Table.Current Is Nothing Then \'如果Current为Nothing
    Return
Else
    If Tables("任务组").current("归档") = False
        Forms("登记").Controls("rwzAdd").Enabled = True
        Forms("登记").Controls("rwzDel").Enabled = True
        Forms("登记").Controls("tjAdd").Enabled = True
        Forms("登记").Controls("tjDel").Enabled = True
        Forms("登记").Controls("tjdpAdd").Enabled = True
        Forms("登记").Controls("tjdpDel").Enabled = True
        Forms("登记").Controls("cpdpAdd").Enabled = True
        Forms("登记").Controls("cpdpDel").Enabled = True  ‘----------------------------以上部分测试通过
    Else
        Forms("登记").Controls("rwzAdd").Enabled = False ------------------从这行开始就会有错了
        \'Forms("登记").Controls("rwzDel").Enabled = False
        \'Forms("登记").Controls("tjAdd").Enabled = False
        \'Forms("登记").Controls("tjDel").Enabled = False
        \'Forms("登记").Controls("tjdpAdd").Enabled = False
        \'Forms("登记").Controls("tjdpDel").Enabled = False
        \'Forms("登记").Controls("cpdpAdd").Enabled = False
        \'Forms("登记").Controls("cpdpDel").Enabled = False
    End If
End If


--  作者:大红袍
--  发布时间:2015/8/17 9:18:00
--  
If e.Table.Current Is Nothing Then \'如果Current为Nothing
    Return
End If
If forms("登记").Opened Then
    If e.Table.current("归档") = False
        Forms("登记").Controls("rwzAdd").Enabled = True
        Forms("登记").Controls("rwzDel").Enabled = True
        Forms("登记").Controls("tjAdd").Enabled = True
        Forms("登记").Controls("tjDel").Enabled = True
        Forms("登记").Controls("tjdpAdd").Enabled = True
        Forms("登记").Controls("tjdpDel").Enabled = True
        Forms("登记").Controls("cpdpAdd").Enabled = True
        Forms("登记").Controls("cpdpDel").Enabled = True  \'----------------------------以上部分测试通过
    Else
        Forms("登记").Controls("rwzAdd").Enabled = False ------------------从这行开始就会有错了
        \'Forms("登记").Controls("rwzDel").Enabled = False
        \'Forms("登记").Controls("tjAdd").Enabled = False
        \'Forms("登记").Controls("tjDel").Enabled = False
        \'Forms("登记").Controls("tjdpAdd").Enabled = False
        \'Forms("登记").Controls("tjdpDel").Enabled = False
        \'Forms("登记").Controls("cpdpAdd").Enabled = False
        \'Forms("登记").Controls("cpdpDel").Enabled = False
    End If
End If