在DBGridEh中,如何使数据移动,而不是光标移动?

秋天之落叶 2019-08-16 12:26:19
我们平常在显示的DBGridEh中,使用next是光标向下移动,直到表格底部,然后光标一直处于底部后,才会数据向上随着光标移动,而光标则永远会在表格的最底部。

我的需求是,假如表格能显示10行,用next移动光标到第5行时,在这个位置能定格,然后再next时,光标还在表格的第5行,而数据向上移动后,第5行的数据变为dataset的第6行的数据。
或者说光标移动到表格的第5行后,next后就一直处在表格的第5行,表中的数据向上移动。
或者说,使用next移动光标时,我希望光标位置离表格的上边或下边有一个N行的距离。
或者说,不管数据如何移动,我希望光标永远处于表格的垂直中央位置。

我说明白了吗?

...全文
124 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
BlueStorm 2019-08-16
  • 打赏
  • 举报
回复
DataSet.RecNo := RecNo + 5; DataSet.RecNo := RecNo;
秋天之落叶 2019-08-16
  • 打赏
  • 举报
回复
貌似next后,点击表格的垂直下来滚动条的下拉端,可以实现这个功能,我想问,那个函数或方法可以代替用鼠标点击一下滚动条的下拉端?
秋天之落叶 2019-08-16
  • 打赏
  • 举报
回复
MoveToRecNo这是个自定义过程吗?
BlueStorm 2019-08-16
  • 打赏
  • 举报
回复
procedure TForm1.MoveToRecNo(DataSet: TDataset; RecNo: Integer);
begin
  if RecNo >= DataSet.RecNo   then
    DataSet.RecNo := RecNo + 5
  else
    DataSet.RecNo := RecNo - 5;

  DataSet.RecNo := RecNo;
end;

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧