Foxtable(狐表)用户栏目专家坐堂 → [求助]在窗口1中获取table1的新增行的上一行某列值,然后定位到新打开窗口表的相应行


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

主题:[求助]在窗口1中获取table1的新增行的上一行某列值,然后定位到新打开窗口表的相应行

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


加好友 发短信
等级:幼狐 帖子:115 积分:1056 威望:0 精华:0 注册:2016/4/10 10:25:00
[求助]在窗口1中获取table1的新增行的上一行某列值,然后定位到新打开窗口表的相应行  发帖心情 Post By:2016/5/26 17:32:00 [只看该作者]

在窗口1中获取table1的新增行的上一行某列值,然后定位到新打开窗口表的相应行

Dim dr As Row = Tables("窗口1_Table1").Rows(Tables("窗口1_Table1").Rows.Count - 1)
Dim txt As String = dr("第二列")
Dim t As Table = Tables("窗口2_Table1")
For i As Integer = 0 To t.Rows.Count -1 
    If t.Rows(i)("第三列") = txt Then
        t.Position = i
        Exit For
    End If
Next

这样写到 窗口2 的afterload 打开窗口没有反应 请问怎么哪里问题

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/26 17:36:00 [只看该作者]

先试试
 
Dim dr As Row = Tables("窗口1_Table1").Rows(Tables("窗口1_Table1").current.Index - 1)
Dim txt As String = dr("第二列")
Dim t As Table = Tables("窗口2_Table1")
For i As Integer = 0 To t.Rows.Count -1 
    If t.Rows(i)("第三列") = txt Then
        t.Position = i
        Exit For
    End If
Next

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


加好友 发短信
等级:幼狐 帖子:115 积分:1056 威望:0 精华:0 注册:2016/4/10 10:25:00
  发帖心情 Post By:2016/5/26 17:38:00 [只看该作者]

错误提示 索引 -1 不是为负数,就是大于行数。

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/26 17:42:00 [只看该作者]

Dim cr As Row = Tables("窗口1_Table1").current
If cr IsNot Nothing Then
    Dim dr As Row = Tables("窗口1_Table1").Rows(iif(cr.index=0, 0, cr.index-1))
    Dim txt As String = dr("第二列")
    Dim t As Table = Tables("窗口2_Table1")
    For i As Integer = 0 To t.Rows.Count -1
        If t.Rows(i)("第三列") = txt Then
            t.Position = i
            Exit For
        End If
    Next
End If

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


加好友 发短信
等级:幼狐 帖子:115 积分:1056 威望:0 精华:0 注册:2016/4/10 10:25:00
  发帖心情 Post By:2016/5/26 17:47:00 [只看该作者]

没有反应 总是定位到第一行 没有定位到想要的行

有没有延时代码 因为我在窗口中还写了一段 先搜索 的代码 

就是说窗口2打开后  table1 是搜索后显示的值  然后才是一楼的代码 

我想打开后 光标自动定位到 窗口1的 table1 新增行的上一行 某列值 
 新增行已经在窗口1打开时新增了的

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/5/26 17:52:00 [只看该作者]

Tables("窗口1_Table1").AddNew

 

Dim cr As Row = Tables("窗口1_Table1").current
If cr IsNot Nothing Then
    Dim dr As Row = Tables("窗口1_Table1").Rows(iif(cr.index=0, 0, cr.index-1))
    Dim txt As String = dr("第二列")
    Dim t As Table = Tables("窗口2_Table1")
    For i As Integer = 0 To t.Rows.Count -1
        If t.Rows(i)("第三列") = txt Then
            t.Position = i
            Exit For
        End If
    Next
End If


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


加好友 发短信
等级:幼狐 帖子:115 积分:1056 威望:0 精华:0 注册:2016/4/10 10:25:00
  发帖心情 Post By:2016/5/26 18:13:00 [只看该作者]

可以了 谢谢大红袍  4楼代码正确

 回到顶部