Q&A

  • Listview 의 검색에 대해..

FindCaption 메소드가 있어서
"와 이거구나!" 박수를 첬지요

But!
ㅜ_ㅜ
like 검색이 안되네요,

Listview 에 '123아싸라abc' 이런 녀석의 캡션이 있다하면

search :='abc';

ListView1.FindCaption(i, search, true, true,false) ;
요로콤 검색을 하면 안나온다 이거지여.
-_-,,

DB 에서 보면  like '%search%'  이게 되야 하는데
이놈의 리스트뷰는 like 'search%' 요것만 되네여. 아.. 골치야~

3  COMMENTS
  • Profile
    최용일 2002.04.25 00:07
    안녕하세요. 최용일입니다.

    그냥 for문으로 루프돌면서 검색하시면 안되나요? 그게 젤 간단할거 같은데...

    Search := 'abc';
    for I := 0 to ListView.Items.Count - 1 do
    begin
        if Pos(Search, ListView.Items[I].Caption) <> 0 then
            ShowMessage('Match: index ' + IntToStr(I));
    end;

    ^^ 항상 즐코하세요...

  • Profile
    야수 2002.04.25 00:31

    최용일님 관심 가져 주셔서 감사합합니다.

    글올리기 전에 그방법으로 했었거든요,^^,
    문제는 수만건 되는 데이터가 있을경우 속도가 예술입니다 -__-,,

    아.. 이를 어찌 해결하노.. 아. . .  .. 금수강산 리스트뷰여~
  • Profile
    최용일 2002.04.25 04:49
    수만건정도 되면 데이터 추가, 삭제 속도가 굉장히 느릴건데... ListView를 가상모드로 쓰시죠... 그러면 0.1초도 안걸릴겁니다. 델파이 데모폴더에 보시면 예제가 있습니다.