LISTVIEW DUVIDAS
Fala Galera
Estou com algumas dúvidas sobre o Objeto ListView..se alguém puder me ajudar, ficarei muito grato:
1 - Como dimensionar a largura das colunas (em Projeto e Execução)
2 - Como fazer pra ele enteder valores como numéricos para organizar os itens de maneira correta (1, 2, 3,..8, 9, 10, 11 e não 1, 10, 11, 12, 2, 3, 4...)
3 - Como fazer com que ao clicar numa linha, ele pegar o valor da primeira coluna
4 - Porque fica sempre uma última coluna do lado direito vazia? tem como apagá-la?
Podem ser simples, algumas que eu tinha já achei no site, outras eu achei mas n funcionam sei lá.
Grato a todos
Muitas dessas duvidas ja estao aqui no site em forma de dicas.
Quanto a ultima coluna voce ter colocado uma coluna a mais somente isso.
Existem mais de 50 exemplos relativos a listview, consulte-os aqui:
listview
Quanto a ultima coluna voce ter colocado uma coluna a mais somente isso.
Existem mais de 50 exemplos relativos a listview, consulte-os aqui:
listview
Ola
Eu tambem tive esse problema mas felizmente a ajuda de um outro amigo, consegui resolve-lo.
Na declaracao dos campos do ListView, voce deve criar um campo extra para os campos numericos e campos data e esse campo extra devera ficar invisivel.
lvwFaturas.ColumnHeaders.Add , , "ID", 0
lvwFaturas.ColumnHeaders.Add , , "Emissão", 1500
lvwFaturas.ColumnHeaders.Add , , "Emissão", 0
lvwFaturas.ColumnHeaders.Add , , "Valor", 1800
lvwFaturas.ColumnHeaders.Add , , "Valor", 0
Na verdade serao esses camspos que ficarao invisiveis que serao ordenados e depois substituidos pelos respectivos campos que estao visiveis.No Exexplo acima os campos de "Emissao e Valor"
E presiso fazer o peque acerto abaixo para os campos numericos e campos data.No campo visivel voce informa os dados normalmente e nos que ficarao invisiveis faz os acertos abaixo.
NewItem.SubItems(1) = Format(rscmdAux!FAT_EMISSAO, "DD/MM/YYYY")
NewItem.SubItems(2) = Format(rscmdAux!FAT_EMISSAO, "YYYYMMDD")
NewItem.SubItems(3) = Format(rscmdAux!FAT_VALOR)
NewItem.SubItems(4) = Format(CDbl("0" & rscmdAux!FAT_VALOR * 100), "000000000000000")
Agora e preciso ordenar os campos, fazendo com que os campos que estao invisiveis sejam ordenados no lugar dos campos que sao exibidos.E uma simples substituicao.Isso ocorre apenas para efeito se visualizacao.
lvwFaturas = Nome do meu ListView
Se eu clicar na coluna 1 entao ordeno pelo conteudo da coluna 2 e assim por diante.
Espero ter ajudado
Um Abraço.
Eu tambem tive esse problema mas felizmente a ajuda de um outro amigo, consegui resolve-lo.
Na declaracao dos campos do ListView, voce deve criar um campo extra para os campos numericos e campos data e esse campo extra devera ficar invisivel.
lvwFaturas.ColumnHeaders.Add , , "ID", 0
lvwFaturas.ColumnHeaders.Add , , "Emissão", 1500
lvwFaturas.ColumnHeaders.Add , , "Emissão", 0
lvwFaturas.ColumnHeaders.Add , , "Valor", 1800
lvwFaturas.ColumnHeaders.Add , , "Valor", 0
Na verdade serao esses camspos que ficarao invisiveis que serao ordenados e depois substituidos pelos respectivos campos que estao visiveis.No Exexplo acima os campos de "Emissao e Valor"
E presiso fazer o peque acerto abaixo para os campos numericos e campos data.No campo visivel voce informa os dados normalmente e nos que ficarao invisiveis faz os acertos abaixo.
NewItem.SubItems(1) = Format(rscmdAux!FAT_EMISSAO, "DD/MM/YYYY")
NewItem.SubItems(2) = Format(rscmdAux!FAT_EMISSAO, "YYYYMMDD")
NewItem.SubItems(3) = Format(rscmdAux!FAT_VALOR)
NewItem.SubItems(4) = Format(CDbl("0" & rscmdAux!FAT_VALOR * 100), "000000000000000")
Agora e preciso ordenar os campos, fazendo com que os campos que estao invisiveis sejam ordenados no lugar dos campos que sao exibidos.E uma simples substituicao.Isso ocorre apenas para efeito se visualizacao.
lvwFaturas = Nome do meu ListView
Private Sub lvwFaturas_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
If ColumnHeader = lvwFaturas.ColumnHeaders(1).Text Then
OrdenaLvw lvwFaturas, lvwFaturas.ColumnHeaders(2)
ElseIf ColumnHeader = lvwFaturas.ColumnHeaders(3).Text Then
OrdenaLvw lvwFaturas, lvwFaturas.ColumnHeaders(4)
Else
OrdenaLvw lvwFaturas, ColumnHeader
End If
End Sub
Se eu clicar na coluna 1 entao ordeno pelo conteudo da coluna 2 e assim por diante.
Espero ter ajudado
Um Abraço.
Tópico encerrado , respostas não são mais permitidas