老师们好~怎么样判断一个listview中是否存在我将要写进去的值.比如说listview中已经有了一段"小明真的很好不错"
那我现在另外一个程序并不知道。所以也向listview写入"小明真的很不错"
此时就开始判断了。而我用的方法是for。但是我的listview有十万条数据时候这样判断是不是太不明智了呢?
所以想来请教一下老师

解决方案 »

  1.   

    看下帮助,里面写的很清楚
    function FindCaption(StartIndex: Integer; Value: string; Partial, Inclusive, Wrap: Boolean): TListItem;
      

  2.   


    当然是循环的读取,你的数据都是从数据库导进listview的,那为什么不在数据库里判断呢?
      

  3.   

    如果你非要在listview上去查找,估计很慢
    现在我们做软件中也会有类似的问题,就是在大量数据中查找,只能牺牲部分内存了,在内存中保留一个副本,当然不需要保留所有列数据,只保留关键字,然后索引与listvies的item索引对应,查找时,在内存中查找,然后根据返回的索引定位listview
      

  4.   


    谢谢你的回复。。
      你的意思是指有新值的时候我们此时会增加到listview后还会向某一个变量赋值?等到有下一条新值进来的时候直接在这一个变量上面判断而不需要调用listview.items[?]对吗????思想是这样不
      

  5.   


    就是说,listview只是显示,真正操作的还是数据库,假如真的没那个值,你始终是要对数据库操作,最后才更新listview显示
      

  6.   

    嗯。已经解决了。。谢谢bdmh和上面的这位朋友,我用了一个变量将值存储起来。。然后下一次再判断的时候直接从值判断而不需要从数据库。。而是直接判断。虽然内存占用大。但起码时间省很多...结帐