以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 【sqltable跨窗体关联】窗体1有sqltable1 窗体2有sqltable2,当双击窗体1sqltable1时候,弹出窗体2,并新窗体2sqltable记录。 (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=102721) |
||||
-- 作者:李孝春 -- 发布时间:2017/6/24 16:37:00 -- 【sqltable跨窗体关联】窗体1有sqltable1 窗体2有sqltable2,当双击窗体1sqltable1时候,弹出窗体2,并新窗体2sqltable记录。 【sqltable窗体】窗体1有sqltable1 窗体2有sqltable2,当双击窗体1sqltable1中当前行时候,弹出窗体2,并新窗体2sqltable记录,该记录对应窗体1sqltable1中当前行。 问题1:怎么在窗体2中定义窗体1sqltable当前行,并将货名传递过来到窗体2中。 问题2:怎么实现数据的跨窗口关联显示。 [此贴子已经被作者于2017/6/25 11:14:10编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2017/6/24 17:08:00 -- 1、tables("窗体1_table1").current 2、结合Currentchanged事件和表的加载load方法
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2017/6/24 17:08:00 -- 因为你的窗口1是打开的,所以你可以在窗口2的任何位置,例如窗口2的AfterLoad事件,通过下面的代码获取窗口的sqltable1 的当前行: Dim r as row = Forms("窗口1").Controls("sqltable1").Table.Current 接下来可以自己做了。
|
||||
-- 作者:李孝春 -- 发布时间:2017/6/24 17:34:00 -- 回复:(有点蓝)1、tables("窗体1_table1").current2... 有点蓝老师 参照你和狐狸爸爸的说法我弄了下 出错如下: 我本来就是在货物录入窗体 双击货物录入表呢 怎么还提示找不到这个控件 此主题相关图片如下:2.png 此主题相关图片如下:3.png [此贴子已经被作者于2017/6/24 17:36:30编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2017/6/24 17:49:00 -- Forms("货物录入").Controls("table1").table 这里是控件名,不是表名
|
||||
-- 作者:李孝春 -- 发布时间:2017/6/24 21:34:00 -- 回复:(有点蓝)Forms("货物录入").Controls("table1... 经过摸索,还是不得要领,还得麻烦有点蓝老师根据上面的例子改改 谢谢! 现在是能够实现新增的表2数据可以获取到当前表1的货名 问题是:在表1双击后打开的窗体中,无法对应显示,表1被双击行的货名数据
|
||||
-- 作者:有点色 -- 发布时间:2017/6/25 11:55:00 --
|
||||
-- 作者:李孝春 -- 发布时间:2017/6/25 12:21:00 -- 回复:(有点色)[upload=foxdb,下拉窗体模糊查询 - 副... 谢谢 有点色老师的思路是 此主题相关图片如下:1.png 我也自己探索了一下 窗体2启动后代码 Dim t2 As Table = Forms("货物录入").Controls("Table1").Table Dim t1 As Table = Forms("价格录入").Controls("Table1").Table If t2.Current IsNot Nothing Then t1.Filter = "货名 = \'" & t2.Current("货名") & "\'" End If 之前忽略了“”之间不能有空格 将下面红色部分空格取消后,效果能够达到我需要的了 t1.Filter = "货名 = \'" & t2.Current("货名 ") & "\'" [此贴子已经被作者于2017/6/25 12:25:33编辑过]
|