以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  下移一行的问题  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=130960)

--  作者:gudao123456
--  发布时间:2019/2/13 9:10:00
--  下移一行的问题
老师:我再设计一个按钮时,用系统命令:Syscmd.Row.MoveDown(),结果提示错误,该表不支持下移一行,为什么?如何解决?谢谢!
--  作者:有点甜
--  发布时间:2019/2/13 9:45:00
--  

参考

 

http://www.foxtable.com/webhelp/scr/1791.htm

 


--  作者:gudao123456
--  发布时间:2019/2/13 9:54:00
--  
我用下面代码:
Dim n As Integer=CurrentTable.Position
If n=CurrentTable.Rows.Count Then
    MessageBox.show("当前为最后一条记录!")
Else
    n=n+1
    CurrentTable.Position=n
End If
已经解决下一条的问题。
但这个是外部数据源,如何解决可见记录的行数问题?即如何判断加载记录的首行和末行?
[此贴子已经被作者于2019/2/13 9:55:39编辑过]

--  作者:有点甜
--  发布时间:2019/2/13 10:00:00
--  

1、可见记录?

 

http://www.foxtable.com/webhelp/scr/2358.htm

 

2、这个意思?

 

Dim n As Integer=CurrentTable.Position
If n=CurrentTable.Rows.Count-1 Then
    MessageBox.show("当前为最后一条记录!")
ElseIf n = 0 Then
    msgbox("第一行")
Else
    n=n+1
    CurrentTable.Position=n
End If


--  作者:gudao123456
--  发布时间:2019/2/13 10:20:00
--  
不好意思,我意思表达不清楚。
我打开的表是外部数据源,是经过选择性加载的,CurrentTable.Position所表示的是加载后的当前行还是后台整个表的当前行?因为我要判断当前是否是加载记录的第一行和最后一行。我在执行代码:
Dim n As Integer=CurrentTable.Position
If n=CurrentTable.Rows.Count Then
    MessageBox.show("当前为最后一条记录!")
Else
    n=n+1
    CurrentTable.Position=n
End If
时,到了最后一行并不显示“当前为最后记录”,

同样,上移一行时我也要判断是否是第一行:
Dim n As Integer=CurrentTable.Position
If n>0 Then
    n=n-1
    CurrentTable.Position=n
Else
    MessageBox.show("当前为第一条记录!")
End If

[此贴子已经被作者于2019/2/13 10:23:01编辑过]

--  作者:有点甜
--  发布时间:2019/2/13 10:32:00
--  
 
Dim n As Integer=CurrentTable.Position
If n=CurrentTable.Rows.Count-1 Then
    MessageBox.show("当前为最后一条记录!")
Else
    n=n+1
    CurrentTable.Position=n
End If
 
--------------------------
 
Dim n As Integer=CurrentTable.Position
If n>0 Then
    n=n-1
    CurrentTable.Position=n
Else
    MessageBox.show("当前为第一条记录!")
End If
 

--  作者:gudao123456
--  发布时间:2019/2/13 11:20:00
--  
OK,谢谢!