Olá galera, nesta Quick Tips mostrarei como podemos ler e escrever texto em um ListView de maneira prática e rápida em Delphi.

Para isso vamos criar um Form (salve o mesmo como uFrmPrincipal) e nele crie:

  • três TLabeledEdit (EdtCodigo, EdtDescricao, EdtValor);
  • três TBitBtn (BtnGravarRegistro, BtnExcluirRegistro, BtnCarregarRegistro);
  • um TListView (ListViewExemplo).

Vamos configurar agora as propriedades do ListViewExemplo. Adicione três Colunas (Código, Descrição, Valor):

  • Propriedade - ViewStyleM = vsReport;
  • Propriedade - SortType = stText;

ListView em Delphi

Veja o exemplo concluído na Figura 1:

Exemplo construído
Figura 1. Exemplo construído

A implementação da Unit ficará como no código a seguir:

unit uFrmPrincipal;
 interface
  
 uses
     Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls, ComCtrls, Buttons; 

 type 

 TFrmPrincipal = class(TForm)
     EdtCodigo: TLabeledEdit;
     EdtDescricao: TLabeledEdit;
     EdtValor: TLabeledEdit;
     Panel1: TPanel;
     ListViewExemplo: TListView;
     BtnGravarRegistro: TBitBtn;
     BtnExcluirRegistro: TBitBtn;
     BtnCarregarRegistro: TBitBtn;
     procedure BtnGravarRegistroClick(Sender: TObject);
     procedure BtnExcluirRegistroClick(Sender: TObject);
     procedure BtnCarregarRegistroClick(Sender: TObject);
   private
     { Private declarations }
 public
     { Public declarations }
 end; 

 var
     FrmPrincipal: TFrmPrincipal; 

 implementation
 {$R *.dfm}
 { Gravar Registro no ListView }
 procedure TFrmPrincipal.BtnGravarRegistroClick(Sender: TObject);
 Var
     Item: TListItem;
 begin
     Item := ListViewExemplo.Items.Add;
     Item.Caption := EdtCodigo.Text;
     Item.SubItems.Add(EdtDescricao.Text);
     Item.SubItems.Add(EdtValor.Text);
     EdtCodigo.Clear;
     EdtDescricao.Clear;
     EdtValor.Clear;
 end; 

 { Excluir Registro no ListView }
 procedure TFrmPrincipal.BtnExcluirRegistroClick(Sender: TObject);
 begin
     if ListViewExemplo.ItemIndex >= 0 then
         ListViewExemplo.DeleteSelected
     else
         ShowMessage('Selecione um item para excluir');
 end; 

 { Carregar Registro do ListView}
 procedure TFrmPrincipal.BtnCarregarRegistroClick(Sender: TObject);
 begin
     if ListViewExemplo.ItemIndex >= 0 then
     begin
         EdtCodigo.Text := ListViewExemplo.ItemFocused.Caption;
         EdtDescricao.Text := ListViewExemplo.ItemFocused.SubItems[0];
         EdtValor.Text := ListViewExemplo.ItemFocused.SubItems[1];
     end
     else
     ShowMessage('Nenhum item foi selecionado para carregar');
 end; 

 end. 

Fico por aqui ate à próxima Quick Tips.

Links Úteis

  • Guia de Referência Delphi:
    Neste Guia de Referência você encontrará o conteúdo que precisa para iniciar seus estudos em Delphi, uma plataforma para desenvolvimento de aplicativos completa, principalmente para soluções desktop e mobile.
  • Últimas atualizações sobre Delphi:
    Fique ligado em todos os conteúdos recentes sobre Delphi em nosso portal, listamos os últimos artigos, devcasts, exemplos, documentações e cursos sobre desenvolvimento com Delphi.
Saiba mais sobre ListView ;)