LISTVIEW . MULTSELECT

USUARIO.EXCLUIDOS 22/11/2006 09:59:26
#185714
é o seguinte moçada;;;
tenho um listview q carrega alguns registros do banco (access via ado).

to precisando fazer o seguinte.

selecionar mais do q 1 registro e exclui-los.

o multselect ja axei nas propriedades dele.

entao preciso fazer o seguinte::
ou dar um for next somente nos registros selecionados... ou entao excluir diretamente do banco todos registros selecionados... alguma sugestão????????? very urgente. vlw moçada.
CAIO.IN.DUST 22/11/2006 10:09:35
#185715
Fera eu fiz de cabeça, pois não tenho o vb instalado aqui, então vc vai ter que dar uma melhorada...

dentro do delete


dim x as integer
for x = 0 to list1.listcount -1
if list1.selected(x) = True then
'Exclui registro Dica coloque o codigo do registro dentro do itendata do objeto list1 exemplo para esse caso: list1.itendata(x)
end if
next x



Para carregar o itendata acho que e assim


list1.add descricão_do_produto
list1.itendata(list1.newindex) = codigo_Do_registro


para ler


codigo = list1.itendata(list1.listindex)


Legal ai esta +/- vale apena dar uma modificada mais a logica é essa

Posta suas duvidas...
RODRIGOGBGOMES 22/11/2006 10:58:44
#185731
Resposta escolhida
cara eu tenho uma rotina parecida com o q vc qr em um sistema meu...

testa ai... dica: o ideal é , qndo vc estiver usando a opção multselect do listview vc nao usar a opção hoverselection.

For X = lst.ListItems.Count To 1 Step -1

If lst.ListItems(X).Selected = True Then
ans = MsgBox("Deseja Excluir a Verba : " & lst.ListItems(X).SubItems(1) & " Do Período de : " & lst.ListItems(X).SubItems(2), vbInformation + vbYesNo, "Excluindo Várias Verbas")
If ans = vbYes Then
If RsCalcEx.State = 1 Then Set RsCalcEx = Nothing
RsCalcEx.Open "Delete * From [CalculoLiquidacao] where [CodProcesso] & [DataBase] & [NomeVerba] ='" & Lcod.Caption & lst.ListItems(X).SubItems(2) & lst.ListItems(X).SubItems(1) & "'", con, adOpenKeyset, adLockOptimistic
CarregaVerbaLST ' essa rotina aqui carrega limpa o listview e carrega os dados do BD
End If
End If
Next


p.s: coloquei o * no delete pq o seu sitema em access entao funciona perfeitamente... espero q ajude. vlw
Tópico encerrado , respostas não são mais permitidas