Foxtable(狐表)用户栏目专家坐堂 → 副本表新增行后光标自动移动到第一行


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

主题:副本表新增行后光标自动移动到第一行

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


加好友 发短信
等级:童狐 帖子:298 积分:2198 威望:0 精华:0 注册:2023/1/11 7:15:00
副本表新增行后光标自动移动到第一行  发帖心情 Post By:2023/9/18 17:54:00 [只看该作者]

我不知道为什么,在我以副本表所做的一个窗口的表中,新增行后,光标自动定位到了第一行的同一列,但刚才新增行却在最后一行,导致无法正常开始输入,必须重新将光标重新定位到最后一行,这增加了很多麻烦,而且有时候这个新增行还自动隐藏,导致找不到新增行,从而无法进行录入.
我不知道我错误设置了什么还是发生了什么情况,哪位老师能帮我看一下, 谢谢!

说明,我的表内没有定义任何排序操作.
[此贴子已经被作者于2023/9/18 17:57:54编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110773 积分:563797 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/18 20:09:00 [只看该作者]

应该是有表事件代码影响了

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


加好友 发短信
等级:童狐 帖子:298 积分:2198 威望:0 精华:0 注册:2023/1/11 7:15:00
  发帖心情 Post By:2023/9/18 21:09:00 [只看该作者]

我再一次将所有表事件代码做了一下检查,调整后基本正常了,谢谢蓝老师.

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


加好友 发短信
等级:童狐 帖子:298 积分:2198 威望:0 精华:0 注册:2023/1/11 7:15:00
  发帖心情 Post By:2023/9/19 6:02:00 [只看该作者]

还是有这么个问题, 该表我是将筛选取消后实现的, 但实际我的其它表也出现了这样的问题, 最后我发现只要是窗体上方设置了筛选,那么在进行新记录时,由于新增的记录不属于筛选范围,这就导致了新增的记录被筛选掉了, 所以当我取消筛选后就能发现这个空的记录, 问题是:
当我在BeforeAddDataRow 或 DataRowAdding, DataRowAdded 时仍不起作用,
只有当我不用窗口方式,取消这个筛选时才能奏效
我的窗口筛选方式如下:
图片点击可在新窗口打开查看

事实上,提供窗口就是为了使用者方便,频繁取消窗口或其筛选方式仍然是有问题的, 我不知道哪里又出了错.
[此贴子已经被作者于2023/9/19 6:03:44编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110773 积分:563797 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/9/19 8:46:00 [只看该作者]

假设筛选条件是编号

方法1、新增行后给新行赋值符合筛选条件的数据,比如
dim r as row = tables("xxx").addnew
r("编号") = “符合筛选条件的值”

2、筛选条件加一个编号为空的条件。比如
原条件
tables("xxx").filter = "编号='123'"
加条件
tables("xxx").filter = "编号='123' or 编号 is null"

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


加好友 发短信
等级:童狐 帖子:298 积分:2198 威望:0 精华:0 注册:2023/1/11 7:15:00
  发帖心情 Post By:2023/9/23 8:45:00 [只看该作者]

最后我选取了版主蓝老师2楼的方式2, 完美解决!
部分表我干脆就在事件DataRowAdding增加了语句 Tables("xx").filter="", 然后利用上方的筛选按钮完成新的筛选, 感谢蓝老师提供方法论.

 回到顶部