5,388
社区成员
发帖
与我相关
我的任务
分享
procedure TForm1.Button1Click(Sender: TObject);
var
s:TStrings;
test:TTest;
begin
//test add object
s:=TStringList.Create;
test:=TTest.Create;
test.str:='test1';
test.id:=1;
s.AddObject(test.str,test);
test.Free;
test:=TTest.Create;
test.str:='test2';
test.id:=2;
s.AddObject(test.str,test);
test.Free;
CheckListBox1.Items:=s;
s.Free;
end;
s:=TStringList.Create;
test:=TTest.Create;
test.str:='test1';
test.id:=1;
s.AddObject(test.str,test);
test.Free;
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, StdCtrls, CheckLst;
type
TTest = class
str: string;
id: integer;
end;
TForm1 = class(TForm)
btn1: TButton;
CheckListBox1: TCheckListBox;
BitBtn1: TBitBtn;
procedure btn1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btn1Click(Sender: TObject);
var
s:TStrings;
test:TTest;
begin
//test add object
s:=TStringList.Create;
test:=TTest.Create;
test.str:='test1';
test.id:=1;
s.AddObject(test.str,test);
test.Free;
test:=TTest.Create;
test.str:='test2';
test.id:=2;
s.AddObject(test.str,test);
test.Free;
CheckListBox1.Items:=s;
s.Free;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var
vTest: TTest;
begin
vTest := TTest(CheckListBox1.Items.Objects[0]);
ShowMessage(vTest.str); //不能得到正确结果
end;
end.