以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]复选框设定  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=47108)

--  作者:cqlwsam
--  发布时间:2014/3/4 16:51:00
--  [求助]复选框设定
如下图,实现如下功能有点问题:
表中符合条件的任一行的列(联系信息)(逻辑型)是true,点击新增按钮窗口中的checkbox1都不能用。
新增按钮的代码:


For Each r As Row In Tables("地址信息").Rows
    If r("联系信息")=1 Then
        e.Form.Controls("CheckBox1").Enabled=False
    Else
        e.Form.Controls("CheckBox1").Enabled=True
    End If
Next
With Tables("地址信息")
    .AllowEdit=True
    If .Current Is Nothing OrElse .Current.DataRow.RowState = DataRowState.Unchanged Then \'如果当前行未曾修改
        Dim r As Row=Tables("地址信息").addnew
        r("patientsID")=e.Form.controls("txt_patients").text
        e.Form.Controls("Btn_edit").Enabled=False
        e.Form.Controls("Btn_delete").Enabled=False
        e.Form.Controls("Btn_first").enabled=False
        e.Form.Controls("Btn_last").enabled=False
        e.Form.Controls("Btn_next").enabled=False
        e.Form.Controls("Btn_pre").enabled=False
        e.Form.Controls("Btn_ok").enabled=True
        e.Form.Controls("Btn_cancel").enabled=True
        e.Form.Controls("Btn_exit").enabled=False
    End If
End With


图片点击可在新窗口打开查看此主题相关图片如下:360软件小助手截图20140304164330.jpg
图片点击可在新窗口打开查看


--  作者:Bin
--  发布时间:2014/3/4 17:09:00
--  
没明白你的意思,请上个例子看看.
--  作者:cqlwsam
--  发布时间:2014/3/4 17:13:00
--  
就是说窗口表中任意一行的“联系信息”为TRUE时,点击“新增信息”按钮,控件“联系信息”均为“不可用”。
--  作者:lsy
--  发布时间:2014/3/4 17:15:00
--  
e.Form.Controls("CheckBox1").Enabled=True
For Each r As Row In Tables("地址信息").Rows
    If r("联系信息")=1 Then
        e.Form.Controls("CheckBox1").Enabled=False
        Exit For
    End If
Next

--  作者:Bin
--  发布时间:2014/3/4 17:16:00
--  
If DataTables("地址信息").Compute("count(_Identify)","联系信息=true")>0 Then
    e.Form.Controls("要禁用的控件").Enabled=False
End If

--  作者:cqlwsam
--  发布时间:2014/3/4 17:18:00
--  
谢谢lsy。从逻辑上看可以,但还是有点问题。达到效果。