NAO CONSIGO CHECAR NO LISTVIEW

NEGRON 27/01/2010 00:39:22
#332918
Boa noite Galera!!!!!

A minha dúvida é a seguinte, estou desenvolvendo um sistema para uma imobiliária, usando ADO e banco de
dados FIREBIRD.
Estou desenvolvendo o aplicativo em 3 camadas onde crio as dlls, até aqui normal....
Criei a tela de cadastro de imposto onde faço o cadastro e apos estar quase finalidando
o usuario seleciona no listview o nome dos imóves para dividir o imposto a pagar.

A minha dúvida é referente ao listview

como que eu faço para quando eu fazer a consulta aparecer os nomes dos imoveis no
listview já check true.... vejam o código abaixo:


 
Public Function PEGARIMPOSTO(Carregarimoveliptu As Object, IMPOS_CODIGO As Object, IMPOS_DESCRICAO As Object, IMPOS_INSCCAD As Object, IMPOS_EXERCICIO As Object, IMPOS_VENCIMENTO As Object, IMPOS_VALTOTAL As Object, IMPOS_QTDIMOVEL As Object, IMPOS_VALORPORIMOVEL As Object, ENTR_IMPOST_CODIGO As Object) As Boolean


Set TABIMOVEL = New ADODB.Recordset
Set TABIMPOSTOSSUB = New ADODB.Recordset
Set TABIMPOSTOS = New ADODB.Recordset

TABIMPOSTOS.Open [Ô] SELECT CODIGOIMP,DESCRIMP,INSCCADIMP,EXERCICIIMP,DTVENCIMP,VALORTOTIMP,QTDIMOVIMP,VALORIMOVIMP from IMPOSTOS WHERE CODIGOIMP=[Ô] & ENTR_IMPOST_CODIGO & [Ô][Ô], CONECTABANCO
If Not TABIMPOSTOS.EOF Then
IMPOS_CODIGO = Trim(TABIMPOSTOS.Fields([Ô]CODIGOIMP[Ô]))
IMPOS_DESCRICAO = Trim(TABIMPOSTOS.Fields([Ô]DESCRIMP[Ô]))
IMPOS_INSCCAD = Trim(TABIMPOSTOS.Fields([Ô]INSCCADIMP[Ô]))
IMPOS_EXERCICIO = Trim(TABIMPOSTOS.Fields([Ô]EXERCICIIMP[Ô]))
IMPOS_VENCIMENTO = Trim(TABIMPOSTOS.Fields([Ô]DTVENCIMP[Ô]))
IMPOS_VALTOTAL = Trim(TABIMPOSTOS.Fields([Ô]VALORTOTIMP[Ô]))
IMPOS_QTDIMOVEL = Trim(TABIMPOSTOS.Fields([Ô]QTDIMOVIMP[Ô]))
IMPOS_VALORPORIMOVEL = Trim(TABIMPOSTOS.Fields([Ô]VALORIMOVIMP[Ô]))
End If



TABIMPOSTOSSUB.Open [Ô] SELECT CODIGOIMP,CODIGOIMOVEL,CODIGOPROP,IM_EXERC,IM_VALOR,IM_DATAVENC,IM_STATUS,IM_DATPAG FROM IMPIMOVEL WHERE CODIGOIMP =[Ô] & TABIMPOSTOS.Fields([Ô]CODIGOIMP[Ô]) & [Ô] [Ô], CONECTABANCO
If Not TABIMPOSTOSSUB.EOF Then
Do While Not TABIMPOSTOSSUB.EOF

[ô][ô][ô] If ListvImovelcad.ListItems(I).Checked = True Then

TABIMOVEL.Open [Ô] SELECT CODIGOIMOVEL, TIPOIMOVEL,ENDERECOIMOVEL,NUMEROIMOVEL,COMPLEMENTOIMOVEL,BAIRROIMOVEL,CIDADEIMOVEL,CEPIMOVEL,SITUACAO,DORMITORIO,SUITE,AREA,TERRENO,GARAGEM,COMODOS,BANHEIROPRIV,BANHEIROSOC,SALAESTAR,SALAJANTAR,CHURRASQUEIRA,DESPENSA,PISCINA,ASFALTO,PONTOREFERENCIA,VALORALUGUEL,DATACADASTRO,FOTO,CODIGOPROP from IMOVEL WHERE CODIGOIMOVEL=[Ô] & TABIMPOSTOSSUB.Fields([Ô]CODIGOIMOVEL[Ô]) & [Ô] [Ô], CONECTABANCO

If Not TABIMOVEL.EOF Then

[ô]ListView1.ListItems.Add(1, , [Ô]Homer Simpson[Ô]).Checked = True

Set LISTAGEM = Carregarimoveliptu.listitems.Add(, , (TABIMOVEL.Fields([Ô]CODIGOIMOVEL[Ô])))

[ô][ô] Set LISTAGEM = Carregarimoveliptu.listitems.Add(, , (TABIMOVEL.Fields([Ô]CODIGOIMOVEL[Ô]))).Checked = True

LISTAGEM.SubItems(1) = Trim(TABIMOVEL.Fields([Ô]VALORALUGUEL[Ô]))
LISTAGEM.SubItems(2) = Trim(TABIMOVEL.Fields([Ô]TIPOIMOVEL[Ô]))
LISTAGEM.SubItems(3) = Trim(TABIMOVEL.Fields([Ô]SITUACAO[Ô]))
LISTAGEM.SubItems(4) = Trim(TABIMOVEL.Fields([Ô]ENDERECOIMOVEL[Ô]))
LISTAGEM.SubItems(5) = Trim(TABIMOVEL.Fields([Ô]NUMEROIMOVEL[Ô]))
LISTAGEM.SubItems(6) = Trim(TABIMOVEL.Fields([Ô]COMPLEMENTOIMOVEL[Ô]))
LISTAGEM.SubItems(7) = Trim(TABIMOVEL.Fields([Ô]BAIRROIMOVEL[Ô]))
LISTAGEM.SubItems(8) = Trim(TABIMOVEL.Fields([Ô]CIDADEIMOVEL[Ô]))
LISTAGEM.SubItems(9) = Trim(TABIMOVEL.Fields([Ô]CEPIMOVEL[Ô]))
LISTAGEM.SubItems(10) = Trim(TABIMOVEL.Fields([Ô]CODIGOPROP[Ô]))
End If

TABIMOVEL.Close
TABIMPOSTOSSUB.MoveNext
Loop
End If

TABIMPOSTOS.Close
TABIMPOSTOSSUB.Close
Set TABIMPOSTOSSUB = Nothing
Set TABIMPOSTOS = Nothing


End Functi


Por favor Galera me ajudem
ASHKATCHUP 27/01/2010 08:59:47
#332927
Por favor, poste uma imagem de como fica a sua listview.
CASSIOJFF 27/01/2010 09:49:31
#332930
Resposta escolhida
Eu normalmente uso esse tipo de codigo pra vir marcado o checked

Dim NewItem As ListItem
Set NewItem = ListaNomes.ListItems.Add(, , Format(IIf(Len(RsCar!cod_op) = 0, [Ô]0[Ô], RsCar!cod_op), [Ô]000000#[Ô]))
If Len(RsCar!cod_op) <> 0 Then
NewItem.Checked = True
End If
NewItem.SubItems(1) = RsCar!CONVENIO
PEGUDO 27/01/2010 10:13:52
#332932
Caro colega programador,

Se entendi bem, você quer que TODOS os checkboxes estejam checados quando o listview terminar a consulta certo?
Vê se te ajuda:
Primeiro, no editor de códigos, Selecione o objeto ListView1 e o procedimento ItemCheck e escreva o código desta maneira:

[txt-color=#0000f0]Private Sub [/txt-color]ListView1_ItemCheck([txt-color=#0000f0]ByVal [/txt-color]Item [txt-color=#0000f0]As[/txt-color] MSComctlLib.ListItem)
Item.Checked = [txt-color=#0000f0]True
End Sub[/txt-color]

Eu não sei como o usuário vai acionar a consulta, de qualquer forma eu fiz este exemplo aí você adapta a sua necessidade:

[txt-color=#0000f0]Private Sub[/txt-color] Form_Load()
[txt-color=#0000f0]Dim[/txt-color] Item [txt-color=#0000f0]As[/txt-color] ListItem
[txt-color=#0000f0]For[/txt-color] i = 1 [txt-color=#0000f0]To[/txt-color] 5
[txt-color=#0000f0] Set [/txt-color]Item = ListView1.ListItems.Add(, , i)
Item.ListSubItems.Add , , i
[txt-color=#007100][ô]Agora você chama a Sub que foi criada, acima[/txt-color]
ListView1_ItemCheck Item
[txt-color=#0000f0]Next[/txt-color]
[txt-color=#0000f0]End Sub[/txt-color]


OK? Espero ter te ajudado
Tópico encerrado , respostas não são mais permitidas