dbgrid中如何实现一条记录的上移或下移?(100分)

  • 主题发起人 water626
  • 开始时间
W

water626

Unregistered / Unconfirmed
GUEST, unregistred user!
在dbgrid中如何实现一条记录的上移或者下移,dbgrid的数据源是adoquery,我用删除记录,再insert的方法,记录的插入位置总乱.
adoquery1.delete; adoquery1.inset;是什么原因请指教
 
先用一个integer型变量记录下记录的位置,执行完后再把它设回去,如:
i:=AdoQuery1.RecNo;
AdoQuery1.Insert;
AdoQuery1.RecNo:=i;
其它的记录操作方法有:
AdoQuery1.first; //指向第一条
AdoQuery1.next; //下一条
AdoQuery1.prior; //上一条
AdoQuery1.last; //最后一条
 
记录的位置很重要吗,如果你的表有排序,它按你排序字段输入值来确定记录位置呀
 
tdbgrid.first;//第一条
tdbgrid.next;//下一条
tdbgrid.prior;//上一要
tdbgrid.last;//最后一条
 
記錄刪除後,記錄指針可能會出現一空位,建議在刪除記錄後再移動一下.
AdoQuery1.Delete;
AdoQuery1.Prior;
AdoQuery1.Next;
AdoQuery1.Insert;
 
打印报表前要提供给用户手工排序的功能,用户根据自己优先考虑的顺序,排好相关人员。
我用上移、下移按钮来实现,但删除后,再插入的位置总不在本记录的上面或下面,不知什么砂因
samyang所说的方法我也试过,不行。后台数据库oracle.
 
删除后,对AdoQuery刷新一下
 
排序,想让记录不乱跑必须排序
 
多人接受答案了。
 
顶部