以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  DropDownForm窗口类型自动隐藏某列  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=107446)

--  作者:蓝蚂蚁
--  发布时间:2017/9/28 10:42:00
--  DropDownForm窗口类型自动隐藏某列
DropDownForm窗口类型的窗口中,如何自动隐藏绑定表的某列,即有一逻辑列名为【停用】,如果【停用】选中,则在加载DropDownForm窗口类型绑定的表中不显示【停用】选中的数据(行)。
注:绑定的表名为:表A

--  作者:蓝蚂蚁
--  发布时间:2017/9/28 10:48:00
--  
在DropDownForm窗口afterload事件中写入一下代码:
Tables("窗口_Table1").Filter = "停用=false"
不起作用。

--  作者:有点甜
--  发布时间:2017/9/28 10:49:00
--  
写到 DropDownOpened 事件。
--  作者:蓝蚂蚁
--  发布时间:2017/9/28 10:59:00
--  
万分感谢
--  作者:蓝蚂蚁
--  发布时间:2017/9/28 11:07:00
--  
代码写在哪个地方?
\'Tables("窗口_Table1").Filter = "停用=false"
Dim txt As String = e.Form.DropDownBox.Text
Dim tbl As Table = Tables("窗口_Table1")
If txt = "" Then
    tbl.Filter = "" & "停用=false"
Else
    txt = "\'%" & txt & "%\'"
    tbl.Filter = "简称 Like " & txt & " Or 简码 Like " & txt & " Or 组件名称 Like " & txt & " Or 生产企业 Like " & txt 
End If
e.Form.DropDownBox.Select() \'将输入焦点返回下拉列表框
[此贴子已经被作者于2017/9/28 11:06:56编辑过]

--  作者:有点甜
--  发布时间:2017/9/28 12:45:00
--  
Dim txt As String = e.Form.DropDownBox.Text
Dim tbl As Table = Tables("窗口_Table1")
Dim t As Table = e.form.DropTable
If t.current("停用") Then
    If txt = "" Then
        tbl.Filter = "停用=false"
    Else
        txt = "\'%" & txt & "%\'"
        tbl.Filter = "停用=false and (简称 Like " & txt & " Or 简码 Like " & txt & " Or 组件名称 Like " & txt & " Or 生产企业 Like " & txt & ")"
    End If
Else
    If txt = "" Then
        tbl.Filter = ""
    Else
        txt = "\'%" & txt & "%\'"
        tbl.Filter = "简称 Like " & txt & " Or 简码 Like " & txt & " Or 组件名称 Like " & txt & " Or 生产企业 Like " & txt
    End If
End If
e.Form.DropDownBox.Select() \'将输入焦点返回下拉列表框

--  作者:蓝蚂蚁
--  发布时间:2017/11/8 20:32:00
--  

老师好: 还是得麻烦你们帮解答了,之前你给我的代码我写进入提示错误。
如下图
图片点击可在新窗口打开查看此主题相关图片如下:image 1.jpg
图片点击可在新窗口打开查看
我想要的结果如下图;
图片点击可在新窗口打开查看此主题相关图片如下:image 2.jpg
图片点击可在新窗口打开查看

--  作者:蓝蚂蚁
--  发布时间:2017/11/8 20:35:00
--  
我上传一个例子给你们,望老师百忙之中抽个时间帮帮忙
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.zip


--  作者:有点甜
--  发布时间:2017/11/8 20:35:00
--  

Dim txt As String = e.Form.DropDownBox.Text
Dim tbl As Table = Tables("窗口_Table1")

    If txt = "" Then
        tbl.Filter = "停用=false"
    Else
        txt = "\'%" & txt & "%\'"
        tbl.Filter = "停用=false and (简称 Like " & txt & " Or 简码 Like " & txt & " Or 组件名称 Like " & txt & " Or 生产企业 Like " & txt & ")"
    End If


e.Form.DropDownBox.Select() \'将输入焦点返回下拉列表框


--  作者:蓝蚂蚁
--  发布时间:2017/11/8 20:40:00
--  
秒回复 真是反应速度超快  但还是不行  错误的提示没有了,但是还是不隐藏停用列中已勾选的行
[此贴子已经被作者于2017/11/8 20:42:19编辑过]