Foxtable(狐表)用户栏目专家坐堂 → 关于列定位的问题求助!


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

主题:关于列定位的问题求助!

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


加好友 发短信
等级:幼狐 帖子:150 积分:1625 威望:0 精华:0 注册:2012/2/10 9:26:00
关于列定位的问题求助!  发帖心情 Post By:2014/3/10 11:53:00 [只看该作者]

打开主表的时候,如何让关联表自动定位在第一列,同时主表也定位在第一列。
使用一下代码,由于系统刚开始的时候默认没有加载任何行,用一下代码会报错。如何让即使没有数据也可以定位到第一列。
Select Case MainTable.Name
    Case "DanWei"
    Tables("DanWei.KeHu").Select(0,0)
    Tables("DanWei").Select(0,0)
    Case "KeHu"
    Tables("KeHu.GuanHuai").Select(0,0)
    Tables("KeHu").Select(0,0)
 End Select
[此贴子已经被作者于2014-3-10 11:55:03编辑过]

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


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

先判断一下是否有加载行即可
Select Case MainTable.Name
    Case "DanWei"
    if Tables("DanWei.KeHu").current isnot nothing then
    Tables("DanWei.KeHu").Select(0,0)
    end if
    if Tables("DanWei.KeHu").isnot nothing then
    Tables("DanWei").Select(0,0)
    end if
    Case "KeHu"
    Tables("KeHu.GuanHuai").Select(0,0)
    Tables("KeHu").Select(0,0)
 End Select

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


加好友 发短信
等级:幼狐 帖子:150 积分:1625 威望:0 精华:0 注册:2012/2/10 9:26:00
  发帖心情 Post By:2014/3/11 14:26:00 [只看该作者]

代码很好,谢谢,已经搞定了


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


加好友 发短信
等级:童狐 帖子:213 积分:2228 威望:0 精华:0 注册:2012/2/3 14:14:00
  发帖心情 Post By:2014/4/12 17:39:00 [只看该作者]

我也在找这个代码
但是我试过不行,能否指点一下:
1.请问这个代码加在哪里?
2.另外  Tables("KeHu.GuanHuai").Select(0,0)  不是只有两个表吗?怎么多了一个表名"GuanHua"?

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


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

你要实现什么需求,上例子.

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


加好友 发短信
等级:童狐 帖子:213 积分:2228 威望:0 精华:0 注册:2012/2/3 14:14:00
  发帖心情 Post By:2014/4/12 18:22:00 [只看该作者]

谢谢BIN版主的答复
同楼主一样的需求,但是试过了代码没有效果
打开主表的时候,如何让关联表自动定位在第一列,同时主表定位在当前列,即位置不变。

两个关联表,主表A,父表A, 子表B

我在A表属性PositionChanged 或项目事件MainTableChanged加入代码都没有反应:

Select Case MainTable.Name

    Case "A"

    If Tables("A.B").current IsNot Nothing Then

    Tables("A.B").Select(0,0)

    End If

    If Tables("A.B") Is Nothing Then

    Tables("B").Select(0,0)

    End If

    Case "B"

    Tables("B.A").Select(0,0)

    Tables("B").Select(0,0)

 End Select


 回到顶部