设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3753|回复: 5
打印 上一主题 下一主题

[窗体] 刷新后如何令光标保持在原来地方。不跳回第一条记录!

[复制链接]
跳转到指定楼层
1#
发表于 2011-2-20 11:18:29 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
光标选中ID4的记录。点刷新后,光标自动跑回第一条记录,如何控制刷新后,光标还保持在ID4不变??
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
6#
发表于 2011-2-20 15:47:42 | 只看该作者
本帖最后由 红尘如烟 于 2011-2-20 15:55 编辑

Refresh 方法刷新对数据的修改,刷新后光标位置会在原来的那行记录上,不会改变,直接刷新窗体不会显示他人添加或删除的记录(不过实际上可以通过把数据放在子窗体,然后调用主窗体的Refresh方法来,来实现刷新后显示他人添加、删除、修改的良记录,但光标位置不变的效果)
Refresh方法的限制:如果在窗体中如果通过菜单等对数据进行了重新排序,用Refresh方法刷新后,光标位置会移到第一行),另外如果使用了多个绑定了记录源的子窗体,或者子窗体层数在2层及以上,会导致Access程序崩溃。
Recalc 方法是刷新表达式的(即控件来源以=号开头的)。
Requery 方法是重新加载数据。
5#
发表于 2011-2-20 15:02:52 | 只看该作者
你可以考虑加一个修改日期(常规日期,有日期和时分秒的那种)字段,每次修改保存后把时间追加上去,按子窗体按修改日期排序之后,刚修改完的永远都在第一条了。。。
4#
 楼主| 发表于 2011-2-20 14:31:22 | 只看该作者
roych 发表于 2011-2-20 11:41
莫非刷新前先记住所选记录的RecordCount,刷新后再返回这条记录?这样会不会太累了?

因为。主窗体下面有子窗体。都是记录数据。我另外做了一个修改窗体。我在字窗体选中某条记录。点修改弹出登记窗体(里面就是我选中那条记录的数据)里输入好修改数据。保存后刷新,。一刷新光标就跑到第一条记录,而我刚修改的那条记录又不知道飞去哪里了。我想修改保存后刷新,光标依然停留在那条记录,我就可以清晰地查看修改后还有没有错误。,...me..Recalc 我要刷新的是主窗体的子窗体数据。用这个直接报错了。
3#
发表于 2011-2-20 12:07:47 | 只看该作者
pwj2009 发表于 2011-2-20 11:18
光标选中ID4的记录。点刷新后,光标自动跑回第一条记录,如何控制刷新后,光标还保持在ID4不变??

换成me.Recalc试试
2#
发表于 2011-2-20 11:41:38 | 只看该作者
莫非刷新前先记住所选记录的RecordCount,刷新后再返回这条记录?这样会不会太累了?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-6 14:01 , Processed in 0.095298 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表