delphi – 刷新Query / cxGrid而不会丢失所选记录
发布时间:2020-12-15 04:14:06 所属栏目:大数据 来源:网络整理
导读:我知道执行以下操作会刷新查询. query.Close;query.Open; 但是在这之后它将焦点设置回cxGrid上的第一条记录. 刷新查询后有没有办法让当前记录保持选中状态? 谢谢. 我做了以下…… procedure Tdatamodule.RefreshGrid;var pos : tbookmark;beginpos := qryMa
我知道执行以下操作会刷新查询.
query.Close; query.Open; 但是在这之后它将焦点设置回cxGrid上的第一条记录. 刷新查询后有没有办法让当前记录保持选中状态? 谢谢. 我做了以下…… procedure Tdatamodule.RefreshGrid; var pos : tbookmark; begin pos := qryMainGrid.GetBookmark; try qryMainGrid.Close; qryMainGrid.Open; qryMainGrid.GotoBookmark(pos); finally qryMainGrid.FreeBookmark(pos); end; 结束; 但现在获取数据集未找到错误消息书签. 任何建议将不胜感激. 解决方法
要刷新数据集,请调用
Refresh 方法并记住数据集光标位置使用书签.您通过调用
GetBookmark 查询当前光标位置的书签,刷新数据集并通过调用
GotoBookmark 移动到书签位置:
var Bookmark: TBookmark; begin Bookmark := Query.GetBookmark; Query.Refresh; Query.GotoBookmark(Bookmark); end; 您不需要调用 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |