以文本方式查看主题

-  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=69565)

--  作者:168wjm
--  发布时间:2015/6/7 12:25:00
--  关于循环查找的问题

各位老师,我刚刚学习狐表,建立了一个窗口,建立了个查询功能,想请老师把我这个代码改成可以循环查找,谢谢,自己按照实例改了好多次,都出问题。

 

Dim de As WinForm.TextBox = e.Form.Controls("yh")
Dim ar As String = de.Value
Dim r1 As DataRow = DataTables("维修单").Find("用户电话  = \'"  & ar & " \'" )
If r1 IsNot Nothing Then
    Dim r2 As String = Tables("维修单").FindRow(r1)
    If r2 >= 0 Then   \'如果找到符合条件的行
        Tables("维修单").Position = r2  \'则选择该行
    End If
End If

[此贴子已经被作者于2015/6/7 12:47:16编辑过]

--  作者:大红袍
--  发布时间:2015/6/7 12:32:00
--  

参考,示例二

 

http://www.foxtable.com/help/topics/0552.htm

 


--  作者:168wjm
--  发布时间:2015/6/7 12:41:00
--  
我按照实例二更改了好多次,都出现问题
--  作者:大红袍
--  发布时间:2015/6/7 14:27:00
--  

 出现什么问题?

 

Dim de As WinForm.TextBox = e.Form.Controls("yh")
Dim ar As String = de.Value
With Tables("维修单")
    Dim r As Integer
    r = .FindRow("用户电话  = \'"  & ar & " \'", .Position+1, True)
    If r > - 1 Then \'如果找到符合条件的行  
        .Position = r  \'则选择该行
    End If
End With

 


--  作者:168wjm
--  发布时间:2015/6/7 15:13:00
--  

谢谢老师,学习了,我刚刚开始接触编程,是我把东西想复杂了,自己转不过弯来了,我当时是这样操作的:

 

 

Dim de As WinForm.TextBox = e.Form.Controls("yh")
Dim ar As String = de.Value
With Tables("维修单")
    Dim r1 As DataRow = DataTables("维修单").Find("用户电话  = \'"  & ar & " \'" )  \'在仓库表中找到输入内容
    If r1 IsNot Nothing Then
        Dim r As Integer
        r = .FindRow("r1", .Position + 1, True ) \'从当前行的下一行开始查找
        If r >= 0 Then \'如果找到的话
            .Position = r \'定位到找到的行.
        End If
    End If

 End With

 

报错,然后再改:

 

Dim de As WinForm.TextBox = e.Form.Controls("yh")
Dim ar As String = de.Value
With Tables("维修单")
    Dim r1 As DataRow = DataTables("维修单").Find("用户电话  = \'"  & ar & " \'" )  \'在仓库表中找到输入内容
    If r1 IsNot Nothing Then
        Dim r As Integer
        r = .FindRow("用户电话", .Position + 1, True ) \'从当前行的下一行开始查找
        If r >= 0 Then \'如果找到的话
            .Position = r \'定位到找到的行.
        End If
    End If
End With

 

还是报错,结果自己就晕了。谢谢老师给的解答