TStringList的两个属性string和object怎么使用?
尤其是object是什么?怎么设置?
stringlist的index怎么移动?
为什么我的程序报错为index不能为1,只能为0?我有两个属性需要加入到TStringList中,即用文件名作索引,而object中装文件的内容。我不会设置object部分,就是代码addobject()里面的参数该怎么写呢?我可以检测出stringlist〔0〕有东西,而〔1〕就不行,为什么?

解决方案 »

  1.   

    下面给你个例子,自己看看吧
    procedure Tfwqxz.FormShow(Sender: TObject); 
    var list1,list2:TStringList;
        i,j:Integer; 
    begin 
    i:=1; 
    list1:= TStringList.Create; 
    list2:= TStringList.Create; 
    if GetServerList(list1) then 
    begin
       showmessage('执行成功');
       for i:=0 to list1.Count-1 do
       begin
          if getusers(list1.Strings[i],list2) then
            begin
              for j:=0 to list2.Count-1 do
              UserList.Items.Add(list2.Strings[j]);
            end;
       end; 
    end; 
    list1.Destroy; 
    list2.Destroy; 
    end; 
      

  2.   

    var
    i:integer;
    Tstring:Tstrings;
    begin
      Tstring:=Tstrings.create;
      Tstring.loadfromfile('c:\xxx.txt')
      for i:=0 to Tstring.count-1 do 
        showmessage(Tstring.string[i]);
      

  3.   

    TStringList的两个属性string和object怎么使用?
    ---------------------------------------------
    string[i]就是文件名
    object[i] 麻烦,你想有它来存文件的内容,假如文件的内容在s中(String类型),文件名字mf1flist.addobject('mf1',Tobjec(s));看例子
    procedure TForm1.FormCreate(Sender: TObject);
    var
      s:string;
    begin
      li:=TStringList.Create;
      s:='I love you';
      li.AddObject('qwe',TObject(s));
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      showmessage(string(integer(li.Objects[0])));
    end;
      

  4.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
      StringList: TStringList;
      Button: TButton;
      i: Integer;
    begin
      StringList := TStringList.Create;
      for i := 0 to 9 do
      begin
        Button := TButton.Create(Self);
    //添加一个TButton对象
        StringList.AddObject('Button' + IntToStr(i), Button);
    {共添加了10个TButton对象}
      end;//取得所有的对象
      for i := 0 to StringList.Count - 1 do
      begin
        //---->你的代码
      end;//以下是调用保存的对象
      TButton(StringList.Objects[9]).Parent := Self;  <----procedure TForm1.Button2Click(Sender: TObject);
    var
      StringList: TStringList;
      Button: TButton;
      i: Integer;
    begin
      StringList := TStringList.Create;
      for i := 0 to 9 do
      begin
        Button := TButton.Create(Self);
    //添加一个TButton对象
        StringList.AddObject('Button' + IntToStr(i), Button);
    {共添加了10个TButton对象}
      end;//取得所有的对象
      for i := 0 to StringList.Count - 1 do
      begin
        //---->你的代码
      end;//以下是调用保存的对象
      TButton(StringList.Objects[9]).Parent := Self;  <----在Form中显示Button
    //以下是对保存的对象的清空
    //for i := 0 to 9 do
    //begin
    //  TButton(StringList.Objects[i]).Free;  <---释放每个对象
    //end;
    end;
    //以下是对保存的对象的清空
      for i := 0 to 9 do
      begin
        TButton(StringList.Objects[i]).Free;
      end;
    end;