以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于列定位的问题求助!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=47423)

--  作者:linshibin
--  发布时间: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
--  发布时间: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
--  发布时间:2014/3/11 14:26:00
--  

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


--  作者:SZDVYE
--  发布时间:2014/4/12 17:39:00
--  
我也在找这个代码
但是我试过不行,能否指点一下:
1.请问这个代码加在哪里?
2.另外  Tables("KeHu.GuanHuai").Select(0,0)  不是只有两个表吗?怎么多了一个表名"GuanHua"?

--  作者:Bin
--  发布时间:2014/4/12 17:41:00
--  
你要实现什么需求,上例子.
--  作者:SZDVYE
--  发布时间: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