• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

vpess

Condição em Listview

4 mensagens neste tópico

Boas,

Peço a vossa ajuda para resolver uma pequena questão.

Eu tenho uma função que preenche uma listview, mas queria colocar uma condição para quando a data fosse vencida colocava a cor da fonte nessa linha a vermelho, senão ficava verde.

Eu já fiz a condição e está a funcionar, mas só consegui colocar numa coluna se esta vencido ou em dia. Não consegui mudar a cor da letra.

Deixo o código em baixo:

________________________________________________________

Public Sub preenche_lista()

ListView1.ListItems.Clear

If rs.RecordCount = 0 Then Exit Sub

 

  While Not rs.EOF

    Set Lst = ListView1.ListItems.Add(, , rs(0))

       

      For i = 1 To 5

        If rs!datav > Date Then

            Lst.SubItems(i) = rs(i)

            Lst.SubItems(6) = "Em dia"

        Else

            Lst.SubItems(i) = rs(i)

            Lst.SubItems(6) = "Vencido"

        End If

       

      Next i

    rs.MoveNext

  Wend

End Sub

________________________________________________________

Cumprimentos,

Vitor Pinto

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Procura por forecolor

acho que é assim

 lst.subitems(6).forecolor=vbred 

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Procura por forecolor

acho que é assim

 lst.subitems(6).forecolor=vbred 

Boas,

Já tinha tentado isso, mas dá erro, "Objecto Requerido"

Public Sub preenche_lista()

ListView1.ListItems.Clear

If rs.RecordCount = 0 Then Exit Sub

 

  While Not rs.EOF

    Set lst = ListView1.ListItems.Add(, , rs(0))

       

      For i = 1 To 5

        If rs!datav > Date Then

            lst.SubItems(i) = rs(i)

            lst.SubItems(6) = "Em dia"

        Else

            lst.SubItems(i) = rs(i)

            lst.SubItems(6) = "Vencido"

            lst.SubItems(6).ForeColor = vbRed

        End If

       

      Next i

    rs.MoveNext

  Wend

End Sub

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O teu erro está aqui

Set lst = ListView1.ListItems.Add(, , rs(0))

tens que alterar para 

Set lst = ListView1.ListItems
lst.add(,,rs(0))

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora