"Olhando no site linha de Código um outro ótimo site para Delphi, achei este tutorial então postei aqui para vocês pois achei muito interessante e funcional"
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).
Definindo um Data Module
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
Inclua alguns registros para teste.
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 um SQLQuery. Faça as seguintes alterações nos componentes.
Agora vamos à paleta de componentes na pagina dbExpress e inclua um SQLConnection e um SQLQuery. Faça as seguintes alterações nos componentes.
SQLConnection1 | Configure uma conexão MySQL. Mude as Propriedades: 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.
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.
Vamos muda as propriedades:
0 – TListColumn | Caption = Login Width = 150 |
1 – TListColumn | Caption = Nome do Usuário Width = 250 |
2 – TListColumn | Caption = Nível Width = 55 Alignment = taCenter |
Agora nossas colunas estarão assim.
Agora clique duas vezes no ImageList1 e escolha os ícones que serão exibidos.
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ão implementation adicione nosso Data Module (Modulo). Conforme mostrado abaixo.
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;
// 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;
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;
// 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;
begin
CriarLista;
end;
Agora basta executa a aplicação para ver o resultado.
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.
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.
Abraços a todos e até proxima.
FONTE : Linha de Codigo
0 comentários:
Postar um comentário