Foxtable(狐表)用户栏目专家坐堂 → [求助]如何在关联表双击打开子表所属行的窗口


  共有4667人关注过本帖树形打印复制链接

主题:[求助]如何在关联表双击打开子表所属行的窗口

帅哥哟,离线,有人找我吗?
wxfjamdc
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:861 威望:0 精华:0 注册:2013/7/16 16:46:00
[求助]如何在关联表双击打开子表所属行的窗口  发帖心情 Post By:2014/2/26 12:18:00 [只看该作者]

“窗口1”所属表为表A,
“查询表”包含表A、表B、表C的部分列,
需要实现的是在“查询表”双击某一行,打开表A对应行的“窗口1”

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/2/26 12:19:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
wxfjamdc
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:861 威望:0 精华:0 注册:2013/7/16 16:46:00
  发帖心情 Post By:2014/2/26 14:33:00 [只看该作者]

哦,少说了一个地方,“窗口1”里面的内容是绑定在表A的,直接在“查询表” form.open 打开的是表A的当前行

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/2/26 14:42:00 [只看该作者]

我无法理解你的问题了,“form.open 打开的是表A的当前行 ”是什么意思呢?


 回到顶部
帅哥哟,离线,有人找我吗?
wxfjamdc
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:861 威望:0 精华:0 注册:2013/7/16 16:46:00
  发帖心情 Post By:2014/2/26 14:48:00 [只看该作者]

语文不好,说不明白图片点击可在新窗口打开查看
窗口1 里面绑定的是表A的内容,
查询表 是表A 表B 表C 关联查询的结果
需要在查询表双击某一行,打开对应行的 窗口1
这么说表达明白了吗


 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/2/26 14:53:00 [只看该作者]

意思是说把表A的焦点,设置到查询表当前行同步的哪一行 再打开窗口是吗?  可以利用FIND来实现


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2014/2/26 14:54:00 [只看该作者]

找出对应的行而已,在doubleclik事件设置代码:
 
dim v as string = e.Table.Current("关键列")
Dim wz As integer = Tables("表A").FindRow("关键列 = '" & v & "'")
If wz >= 0 Then
        Tables("表A").Position = wz

         Forms("窗口1").Open()
End If

参考:

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

 


 回到顶部
帅哥哟,离线,有人找我吗?
wxfjamdc
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:104 积分:861 威望:0 精华:0 注册:2013/7/16 16:46:00
  发帖心情 Post By:2014/2/26 15:07:00 [只看该作者]

搞定,谢谢
Dim r As String = Tables("查询表").Current("第一列")
Tables("表A").Position = Tables("表A").Find(r, Tables("表A").RowSel + 1, "第一列", False, False, True)
Forms(“窗口1”).Open

不知道这么精简合适不
[此贴子已经被作者于2014-2-26 15:07:30编辑过]

 回到顶部