以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  dropdownbox筛选表格数据  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=35154)

--  作者:xu3180497
--  发布时间:2013/6/25 11:32:00
--  dropdownbox筛选表格数据

现在我做了一个界面,有一个dropdownbox(下面就简称DDB),一个checkbox(下面就简称CHK)。还有下面绑定了一张表(table1)

其中CHK是选择是否支持模糊查找,勾上就是支持,不勾上就精确查找。

DDB希望能够输入某些值后按照某些列的值进行查找,(可以在Enter事件里面写,写可以在ModalButtonClick)中,像知道具体怎么实现,最好能给出详细的代码设计,我不是很懂这个foxtable。

类似界面如下:


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130625113127.png
图片点击可在新窗口打开查看
可以在框中输入零部件名称进行模糊查询。
--  作者:Bin
--  发布时间:2013/6/25 11:40:00
--  
可以参考这里做 http://www.foxtable.com/help/topics/2116.htm


实在不会可以上个例子.

帮助一定要从头到尾看一遍.

--  作者:xu3180497
--  发布时间:2013/6/25 13:34:00
--  

大神,还有一个小问题,就是如果筛选的记录没有的话,就会报错,能不能不让他报这个错误啊。

能够匹配的时候:

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130625133356.png
图片点击可在新窗口打开查看
不能匹配的时候:

 


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130625133343.png
图片点击可在新窗口打开查看
设计代码:TextChanged:

Dim txt As String = e.Form.Controls("DropBox11").Text
Dim tbl As Table = Tables("基本信息表")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "\'*" & txt & "*\'"
    tbl.Filter = "设备编号 Like " & txt

End If

 

顺便问一下:Else If txt != "" And e.Form.Controls("CheckBox11").Checked = True
这句话编译不过 提示应为标识符,怎么解决?我的意思就是想checkbox选中的时候才进行模糊匹配。

 

 

[此贴子已经被作者于2013-6-25 13:56:15编辑过]

--  作者:Bin
--  发布时间:2013/6/25 14:04:00
--  
报错的是你 表事件 CurrentChanged 里面的代码.  应该是有获取当前行的代码,但是表为空的话没有当前行所以就报错了.
--  作者:xu3180497
--  发布时间:2013/6/25 14:27:00
--  

非常感谢,还有个问题就是我的模糊查找不勾选的时候,也就是精确匹配的时候,怎么实现呢,现在按照我的代码不行,而且每在DDB输入一个字符就会弹出一个错误信息。

如下图:

 每输入一个字符就会弹出类似窗口:


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130625133343.png
图片点击可在新窗口打开查看

输入正确的编号还是没有出来结果:

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20130625133356.png
图片点击可在新窗口打开查看
代码是:

Dim txt As String = e.Form.Controls("DropBox11").Text
Dim bln As Boolean = e.Form.Controls("CheckBox11").Checked
Dim tbl As Table = Tables("基本信息表")
If txt = "" Then
    tbl.Filter = ""
ElseIf bln = False Then
    tbl.Filter = "设备编号 = " & txt

Else
    txt = "\'*" & txt & "*\'"
    tbl.Filter = "设备编号 Like " & txt

End If


--  作者:Bin
--  发布时间:2013/6/25 14:29:00
--  
你的设备编号是字符串列.那么要使用单引号括起来

ElseIf bln = False Then
    tbl.Filter = "设备编号 = \'" & txt & "\'"

Else


--  作者:xu3180497
--  发布时间:2013/6/25 14:51:00
--  

恩恩 ,谢谢啊 有问题还会来请教你!


--  作者:Bin
--  发布时间:2013/6/25 14:53:00
--  

 

图片点击可在新窗口打开查看

 

看帮助一定要按顺序,头一两遍可以不求甚解,第三遍开始要将每个例子实际操作演练一遍,不明白的就上论坛求助。
三遍之后才开始做系统,先设计好表,想做什么功能,就做什么功能,遇到问题在帮助找答案,找不到的在论坛提问,不断遇到问题,不断解决问题,慢慢就熟悉了。
此外一定要先掌握《使用指南》,然后再看《开发指南》


--  作者:xu3180497
--  发布时间:2013/6/25 15:02:00
--  
恩 好的,对这个foxtable刚学习,不是很熟 ,会慢慢强化的。