新手问个关于LISTVIEW组件的问题
在ListView.ViewStyle:=vsreport;
的情况下
procedure TForm1.Button1Click(Sender: TObject);
var
newitem:TListItem;
begin
newitem:=ListView1.Items.Add;
with newitem do
begin
Caption:=Edit1.Text;
SubItems.Add(Edit2.Text);
SubItems.Add(Edit3.Text);
end;
end;
与
procedure TForm1.Button1Click(Sender: TObject);
begin
ListView1.Items.Add.Caption:=Edit1.Text;
ListView1.Items.Add.SubItems.Add(Edit2.Text);
ListView1.Items.Add.SubItems.Add(Edit3.Text);
end;
end;
这两种情况产生的效果是不一样的,为什么呢?
[解决办法]
因为Items.Add是一个方法,它返回一个TListItem对象,执行一次它就会创建一个新的TListItem,所以第二种情况实际上生成了三个TListItem