Você está na página 1de 6

07/08/13

Delphi: Usando ListViewcomo DBGrid

Delphi: Usando ListView como DBGrid

Neste artigo irei mostrar uma técnica muito simples de como usar um Listview para exibir dados de uma tabela.

para exibir dados de uma tabela. por Walbert Castro 18 9 1 2 0 Olá pessoal,
18 9 1 2 0
18
9
1
2
0

Olá pessoal,

Inicialmente gostaria de agradecer ao convite para participa da família Linha de Código. É sempre bom estar ao lado de pessaos do nosso meio apredendo e trocando conhecimentos.

Como colunista pretendo participar fornecendo artigos, aplicativos e dicas que possam ser úteis no nosso dia a dia. Para começar irei mostrar uma técnica muito simples de como usar um Listview para exibir dados de uma tabela.

Mãos a obra.

Neste artigo vou utilizar Banco de Dados MySQL, mas nada impede que se possa usar outros tipos (Interbase/FireBird ou até mesmo o velho Paradox e Dbase).

Estrutura das Tabela

Tabela users

o velho Paradox e Dbase). Estrutura das Tabela Tabela users Inclua alguns registros para teste. Definindo

Inclua alguns registros para teste.

das Tabela Tabela users Inclua alguns registros para teste. Definindo um Data Module No Delphi crie

Definindo um Data Module

No Delphi crie uma nova aplicação e em File->New->Other escolha Data Module, salve o nosso Data Module como Modulo e na propriedade Name digite Dm. Agora vamos à paleta de componentes na pagina dbExpress e inclua um SQLConnection e umSQLQuery. Faça as seguintes alterações nos componentes.

Configure uma conexão MySQL. Mude as Propriedades:
Configure uma conexão MySQL. Mude as Propriedades:

Configure uma conexão MySQL.

Mude as Propriedades:

07/08/13

Delphi: Usando ListViewcomo DBGrid

SQLConnection1

LoadParamOnConnect = True LoginPrompt = False Connected = True

SQLQuery1

Name = SqUsers SQLConnection = SQLConnection1 SQL = select * from users order by login Active = True

Adicione todos os Campos ao

SQLQuery

Seu Data Module deve esta como mostrado abaixo.

SQLQuery Seu Data Module deve esta como mostrado abaixo. Configurando o Formulário No form1 vamos incluir

Configurando o Formulário

No form1 vamos incluir um ListView e ImageList (ambos da pagina Win32) . E mude as propriedades

como mostrado abaixo.

ListView1

GridLines = True SmallImages = ImageList1 RowSelect = True ViewStyle = vsReport

Clique duas no Listview e inclua três colunas. Conforme mostrado abaixo.

Listview e inclua três colunas. Conforme mostrado abaixo. Vamos muda as propriedades: 0 – TListColumn Caption

Vamos muda as propriedades:

0 – TListColumn

Caption = Login Width = 150

 

Caption = Nome do Usuário

07/08/13

Delphi: Usando ListViewcomo DBGrid

1 – TListColumn

Width = 250

2 – TListColumn

Caption = Nível Width = 55 Alignment = taCenter

Agora nossas colunas estarão assim.

55 Alignment = taCenter Agora nossas colunas estarão assim. Agora clique duas vezes no ImageList1 e

Agora clique duas vezes no ImageList1 e escolha os ícones que serão exibidos.

no ImageList1 e escolha os ícones que serão exibidos. Vamos usar a imagem 0 para usuários

Vamos usar a imagem 0 para usuários com Nível igual A e a imagem 1 para usuários com Nível O.

Criando o procedimento

Agora vamos criar o procedimento responsável por mostrar os dados da tabela no ListView.

No editor de código na sessão public vamos declara o procedimento CriarLista e na

sessãoimplementation adicione nosso Data Module (Modulo). Conforme mostrado abaixo.

07/08/13

Delphi: Usando ListViewcomo DBGrid

07/08/13 Delphi: Usando ListViewcomo DBGrid Agora vamos ao código procedure TForm1.CriarLista; var ListItem: TListItem;

Agora vamos ao código

procedure TForm1.CriarLista; var ListItem: TListItem; // Criamos uma variável para guarda os itens do Listview begin

// Limpa o Conteudo Existente no ListView

ListView1.Clear;

// Posicionamos no Primeiro Registro Dm.SqUsers.First;

while not Dm.SqUsers.Eof do begin

// Adicionamos um Item ao ListView ListItem := ListView1.Items.Add;

// Verifica qual o Icone deve ser apresentado if Dm.SqUsersnivel.Value = "A" then ListItem.ImageIndex := 0 else ListItem.ImageIndex := 1;

// Adicionamos dados a Coluna Login ListItem.Caption := Dm.SqUserslogin.Value;

07/08/13

Delphi: Usando ListViewcomo DBGrid

// Adicionamos a Coluna Nome do Usuario ListItem.SubItems.Add(Dm.SqUsersnome_usuario.Value);

// Adicionamos a coluna Nivel ListItem.SubItems.Add(Dm.SqUsersnivel.Value);

// Mudamos para o proximo registro Dm.SqUsers.Next;

end;

//Seleciona a primeira linha do ListView se existir dados na tabela if Dm.SqUsers.RecordCount > 0 then Listview1.ItemIndex := 0; end;

Agora no Evento OnShow do formulário vamos acrescenta no procedimento

procedure TForm1.FormShow(Sender: TObject); begin CriarLista; end;

Agora basta executa a aplicação para ver o resultado.

; Agora basta executa a aplicação para ver o resultado. Conclusão Aqui termino meu primeiro artigo,

Conclusão

Aqui termino meu primeiro artigo, tentei mostrar de forma simples como exibir dados de uma tabela

num ListView. Dica que pode ser útil em pequenas aplicações.

07/08/13

Abraços a todos e até proxima.

Delphi: Usando ListViewcomo DBGrid