以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  带条件选择的下一条  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=174601)

--  作者:jhxb8821
--  发布时间:2022/1/22 15:10:00
--  带条件选择的下一条
老师,帮我看看这个代码怎么写,带条件选择的查找第一行、下一行
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目0122.foxdb


Dim sn As WinForm.ComboBox = e.Form.Controls("ComboBox1")
Dim v As String = sn.text
。。。

With Tables("表A")
    .Position = .Position + 1
End With

--  作者:有点蓝
--  发布时间:2022/1/22 15:15:00
--  
("表A")根据条件筛选:http://www.foxtable.com/webhelp/topics/1058.htm

第一行、下一行代码不需要变

--  作者:jhxb8821
--  发布时间:2022/1/22 15:50:00
--  
我这样写的绑定了列
第一行:
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Filter = "户型 = \'" & .Value & "\'"
    End If
End With

Tables("表A").Position = 0

If Filter > "" Then
    Tables("表A").Filter = Filter
End If
下一行:
Dim Filter As String
With e.Form.Controls("ComboBox1")
    If .Value IsNot Nothing Then
        Filter = "户型 = \'" & .Value & "\'"
    End If
End With
With Tables("表A")
    .Position = .Position + 1
End With
If Filter > "" Then
    Tables("表A").Filter = Filter
End If

但我在窗口要实现同时显示本行和下一行,这个代码显示不了


--  作者:有点蓝
--  发布时间:2022/1/22 16:04:00
--  
筛选代码另外放一个筛选按钮,不要放到第一行下一行里
--  作者:jhxb8821
--  发布时间:2022/1/22 16:18:00
--  好
蓝老师,已单独加了一个按钮,请问如何在窗口同时显示当前选房人和下一个选房人,不知代码怎么修改,论坛我今天找了一天都没有找到
--  作者:有点蓝
--  发布时间:2022/1/22 16:25:00
--  
窗口控件绑定表的,只能一次显示一行的数据。

考虑不要做绑定。在窗口afterload事件取第一行的内容给第一套控件赋值,取第二行的内容给第二套控件赋值

--  作者:jhxb8821
--  发布时间:2022/1/22 16:45:00
--  赋值
我也是这么想的不能绑定控件,要用赋值的办法才行,可是怎么赋值却搞不懂,请老师帮忙解决
--  作者:有点蓝
--  发布时间:2022/1/22 17:19:00
--  
比如:
dim r as row =  tables(“表A”).rows(0)
e.form.controls(“textbox1”).text = r("第一列")

dim r2 as row =  tables(“表A”).rows(1)
e.form.controls(“textbox2”).text = r("第一列")

--  作者:jhxb8821
--  发布时间:2022/1/22 17:33:00
--  涉及2行问题
蓝老师,我水平很有限,刚才试了一下搞不定,这个代码又涉及很多条件叠加,顾此失彼,麻烦你抽空帮我看看
我取消绑定,将下列代码放在窗口事件里,没有用
Dim r As Row =  Tables("表A").rows(0)
e.form.controls("textbox1").text = r("选房人姓名")
e.form.controls("textbox2").text = r("选房顺序号")

Dim r2 As Row =  Tables("表A").rows(1)
e.form.controls("textbox3").text = r("选房人姓名")
e.form.controls("textbox4").text = r("选房顺序号")
[此贴子已经被作者于2022/1/22 17:45:44编辑过]

--  作者:有点蓝
--  发布时间:2022/1/22 17:50:00
--  
下一个

With Tables("表A")
if .Position < .rows.count - 2
    .Position = .Position + 1
Dim r As Row =  Tables("表A").rows(.Position)
e.form.controls("textbox1").text = r("选房人姓名")
e.form.controls("textbox2").text = r("选房顺序号")

Dim r2 As Row =  Tables("表A").rows(.Position+1)
e.form.controls("textbox3").text = r("选房人姓名")
e.form.controls("textbox4").text = r("选房顺序号")
endif
End With