我在窗体上放了一个listview控件,一个Edit控件!listview控件的列表里读出了许多大图标!其Caption显示为T001、T002等!现在我想做个快速查找!比如我在Edit控件里输入T001响应下Edit的KeyDown事件就可以直接定位到listview里的Caption为T001的图标!
   这个功能该怎么实现啊?
   谁帮我看看啊?

解决方案 »

  1.   

    function TfrmMain.LocateLvwBy(AListView: TListView;
      AItemCaption: String): String;
    var
      i, iTemp: Integer;
    begin
      for i := 0 to AListView.Items.Count - 1 do
      begin
        if AListView.Items.Item[i].Caption = AItemCaption then
        begin
          AListView.Items.Item[i].Selected := True;
          AListView.Items.Item[i].MakeVisible(False);
          Exit;
        end;
      end;
    end;
      

  2.   

    明白了谢谢啊!
    头一次用listview好复杂啊
      

  3.   

    function TfrmMain.LocateLvwBy(AListView: TListView;
      AItemCaption: String): String;
    var
      aItem: TListItem;
    begin
      aItem := AListView.FindCaption(0,AItemCaption,True,True,False);
      if aItem <> nil then
      begin
        AListView.Selected := aItem;
        aItem.MakeVisble(True);
        AListView.SetFocus;
      end; 
    end;