MOVER REGISTROS EM UM LISTVIEW
Pessoa, bom dia!
Tenho um Listview onde carrego as seguintes informações do banco de dados
Codigo Nome Data
10 Marcos 15/08/2014
20 Amanda 16/08/2014
30 Marcelo 17/09/2014
Como eu poderia fazer para mover o 3o Registro para o 2o, por exemplo, e o segundo ficaria sendo o terceiro.
Pode ser ate dois botoes, onde eu selecione o registro (check) que quero mover, clico no botao para cima ou para baixo
Codigo Nome Data
10 Marcos 15/08/2014
30 Marcelo 17/09/2014
20 Amanda 16/08/2014
ou seja, poder navegar para cima e para baixo com qualquer registro, e ter o controle do registro movimentado..
Desde ja agradeço a atenção,
1 abraço
Emanuel
Tenho um Listview onde carrego as seguintes informações do banco de dados
Codigo Nome Data
10 Marcos 15/08/2014
20 Amanda 16/08/2014
30 Marcelo 17/09/2014
Como eu poderia fazer para mover o 3o Registro para o 2o, por exemplo, e o segundo ficaria sendo o terceiro.
Pode ser ate dois botoes, onde eu selecione o registro (check) que quero mover, clico no botao para cima ou para baixo
Codigo Nome Data
10 Marcos 15/08/2014
30 Marcelo 17/09/2014
20 Amanda 16/08/2014
ou seja, poder navegar para cima e para baixo com qualquer registro, e ter o controle do registro movimentado..
Desde ja agradeço a atenção,
1 abraço
Emanuel
Função para mover o item da ListView para cima
Função para mover o item da ListView para baixo
Para chamar as funções
Sub MoverItemCima(lvw As ListView)
On Local Error Resume Next
Dim nItem As Integer, xItem As ListItem
With lvw
If .SelectedItem.Index < 1 Then Exit Sub
nItem = .SelectedItem.Index
Set xItem = .SelectedItem
If nItem = 1 Then Exit Sub [ô]can[ô]t move 1st item up
[ô]move item up
.ListItems.add nItem - 1
.ListItems(nItem - 1).Tag = xItem.Tag
.ListItems(nItem - 1).Text = xItem.Text
.ListItems(nItem - 1).SubItems(1) = xItem.SubItems(1)
[ô]é necessário repetir para cada subitem da lista
[ô]remove old item
.ListItems.Remove nItem + 1
[ô]select the item that was just moved
.ListItems(nItem - 1).Selected = True
.Refresh
End With
End Sub
Função para mover o item da ListView para baixo
Sub MoverItemBaixo(lvw As ListView)
On Local Error Resume Next
Dim nItem As Integer, xItem As ListItem
With lvw
If .SelectedItem.Index < 1 Then Exit Sub
nItem = .SelectedItem.Index
Set xItem = .SelectedItem
If nItem = .ListItems.Count Then Exit Sub [ô]can[ô]t move last item down
[ô]move item down
.ListItems.add nItem + 2
.ListItems(nItem + 2).Tag = xItem.Tag
.ListItems(nItem + 2).Text = xItem.Text
.ListItems(nItem + 2).SubItems(1)= xItem.SubItems(1)
[ô]é necessário repetir para cada subitem da lista
[ô]remove old item
.ListItems.Remove nItem
[ô]select the item that was just moved
.ListItems(nItem + 1).Selected = True
.Refresh
End With
End Sub
Para chamar as funções
Private Sub cmdMoverCima_Click()
MoverItemCima ListView1
End Sub
Private Sub cmdMoverBaixo_Click()
MoverItemBaixo ListView1
End Sub
Bom dia amigo Fabiano!
Vou da uma analisada e testar, darei um retorno em breve.
Obrigado pela atenção
Emanuel
Vou da uma analisada e testar, darei um retorno em breve.
Obrigado pela atenção
Emanuel
Caro Fabiano,
Obrigado mais uma vez!
Seu código resolveu meu problema! ficou perfeito.
1 abraço!
Obrigado mais uma vez!
Seu código resolveu meu problema! ficou perfeito.
1 abraço!
Tópico encerrado , respostas não são mais permitidas