Delphi listview使用部分总结代码

procedure TForm1.FormCreate(Sender: TObject);
var
  listitem:TListItem ;
begin
  tlistview(lv1 ).Items.BeginUpdate;
    try
      tlistview(lv1 ).Items.Clear;
      with qry1 do
      begin
      Close;
      SQL.Clear ;
      SQL.Add('select * from student');
      ExecSQL ;
      Open ;
      while not eof do
        begin
//          i := lv1 .Items.Count;
        with lv1 do
        begin
        ListItem:=Items.Add;
        ListItem.Caption:=qry1 .FieldByName('xuehao').AsString;
        ListItem.SubItems.Add(qry1 .FieldByName('name').AsString);
        ListItem.SubItems.Add(qry1 .FieldByName('age').AsString);;
        ListItem.SubItems.Add(qry1 .FieldByName('salary').AsString);
        end;
        next;
        end;
      end;
      finally
      tlistview(lv1 ).Items.EndUpdate;
      end;
      end;
procedure TForm1.btn1Click(Sender: TObject);
var
  listitem:TListItem ;
begin
   tlistview(lv1 ).Items.BeginUpdate;
    try
       with lv1 do
        begin
        ListItem:=Items.Add;
        ListItem.Caption:=Trim(edt1 .Text );
        ListItem.SubItems.Add(Trim(edt2 .Text ));
        ListItem.SubItems.Add(Trim(edt3 .Text ));
        ListItem.SubItems.Add(Trim(edt4 .Text ));
        end;
         finally
      tlistview(lv1 ).Items.EndUpdate;
//  Form2 :=TForm2 .Create(nil);
//  Form2 .ShowModal ;
//  Form2 .Free;
end;
end ;

procedure TForm1.btn2Click(Sender: TObject);
var
    i:Integer ;
begin
For i:=0 to lv1.Items.Count-1 Do
  If lv1.Items[i].Selected then  //i=ListView1.Selected.index
    begin
      lv1.Items.Delete(i);  //删除当前选中行
      ShowMessage('删除成功!');
    end;

end;

procedure TForm1.btn3Click(Sender: TObject);
begin
 if lv1.Selected <> nil then
 begin
  edt1 .Text := lv1 .Selected.Caption;
  edt2 .Text :=lv1 .Selected .SubItems [0];
  edt3 .Text :=lv1 .Selected .SubItems [1] ;
  edt4 .Text :=lv1 .Selected .SubItems [2] ;
  end
  else begin
  ShowMessage('No record is seleceted!');
  end;
end;

原文地址:https://www.cnblogs.com/feng801/p/1273459.html