如何使用Locate,可以定位到一条记录之后,再定位下一条? ( 积分: 50 )

  • 主题发起人 主题发起人 比尔.丐痴
  • 开始时间 开始时间

比尔.丐痴

Unregistered / Unconfirmed
GUEST, unregistred user!
当一个表内某个字段有多条记录是相同,使用Locate能够定位到第一条,如何在找到第一条记录之后再定位到下一条记录呢?我看帮助里有LocateNext,但是不懂怎么用,看它的参数和Locate的一样,但是Table或Query和ClientDataSet都没有LocateNext过程呢。
 
当一个表内某个字段有多条记录是相同,使用Locate能够定位到第一条,如何在找到第一条记录之后再定位到下一条记录呢?我看帮助里有LocateNext,但是不懂怎么用,看它的参数和Locate的一样,但是Table或Query和ClientDataSet都没有LocateNext过程呢。
 
不清楚,干嘛不用filter
 
你已经定位了第一条,再table.next不就完了吗?为什么还要locateNext??
 
不清楚,干嘛
 
使用table.next是不行的,使用table.next只是跳到当前的下一条。我的意思是,类似于word里的查找一样,在找到一条记录后,在跳到下一条满足刚才条件的记录。
 
好像不行.
 
用ADOQuery
 
在查询的基础上再次查询,好像可以定位到狭义条记录
 
还是那句:为什么不用filter?Table或Query和ClientDataSet都有filter。
 
Dataset.Filter := 查询条件<br>try<br> &nbsp; &nbsp;Dataset.FindFirst; //第一条<br> &nbsp;except<br> &nbsp; &nbsp;showmsg('没有找到!');<br> &nbsp;end;<br><br>try<br> &nbsp; &nbsp;Dataset.FindNext;//下一条<br> &nbsp;except<br> &nbsp; &nbsp;showmsg('没有找到!');<br> &nbsp;end;<br><br>绝对可以
 
if DataSet.locate then<br> &nbsp; begin<br> &nbsp; &nbsp; &nbsp;while DataSet.locatenext do<br> &nbsp; &nbsp; &nbsp; &nbsp;begin<br> &nbsp; &nbsp; &nbsp; &nbsp;end;<br> &nbsp; end;
 
locate有这功能吗?<br><br>为什么不用DBNavigator????<br>简单,方便.
 
这个问题应该分在Windows api嘛?
 
LocateNext是TIBCustomDataSet组件的方法,只有InterBase数据库才支持吧<br>用Crazyz的方法吧
 
后退
顶部