大悟还俗

邮箱 key_ok@qq.com 我的收集 http://pan.baidu.com/share/home?uk=1177427271
  新随笔  :: 联系 :: 订阅 订阅  :: 管理

TStrings (TStringList)很有功能

Posted on 2013-10-21 13:19  大悟还俗_2  阅读(486)  评论(0编辑  收藏  举报

用 TStrings的Object 保存类的方式,来保存除了Items以外的值。

今天才发现,原来,TStrings下,还有 Items,Values,Items.Names,Items.Values,Items.Strings

之分。

大家赶快去试试吧。

如果只是简单的String类型的,用这些,足够的了。

大家不用试了。我自己都快忘记,写了段。

 

procedure TfrmRegManage.Button1Click(Sender: TObject);
var sl:TStringList;a:Integer;
begin
  sl:=TStringList.Create;
  for a:=0 to 10 do
    sl.Add(IntToStr(a)+'aaa');
  Memo1.Lines.Add(sl.DelimitedText);
  ShowMessage(sl.Strings[0]);//0aaa
  sl.Free;
  Memo1.Lines.Add('123=abc');
  ShowMessage(Memo1.Lines.Values['123']);//abc
  for a:=0 to Memo1.Lines.Count-1 do ShowMessage(Memo1.Lines.Names[a]);//其中有个显示123
end;

 

格式是 Name=Value 这个比较有用。

 

  TStrings的AddObject方法应用      

(1) integer 于 Object

   cmbBox.Items.AddObject(A_Value,pointer(I_Value));
  
   I_Ret:=cmbBox.itemindex;
   I_perID:=integer(cmbBox.Items.Objects[I_Ret]);

(2) string 于 Object

  A_Code:='custID';
  ComboBox1.Items.AddObject('客户ID',TObject(A_Code));

  A_Value:=string(ComboBox1.Items.Objects[ComboBox1.ItemIndex]);