1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

vb 2k5 - Listbox colors

Discussão em 'Programação' iniciada por Crepito, 1 de Julho de 2007. (Respostas: 1; Visualizações: 525)

  1. Crepito

    Crepito Power Member

    Boas.

    Alguem me poderia explicar, ou dar um link de algum site que explique bem como faço para ter varias cores numa listbox?

    A listbox por default nao deixa. Pelo que pesquisei e necessario mudar o drawmode para: OwnerDrawVariable

    e apos isso temos que criar nos os

    Private Sub MeasureItemHandler

    e

    Private Sub DrawItemHandler


    O meu problema e perceber o que introduzir em cada um deles.

    Para o measureitemhandler suponho que isto esteja correcto

    Código:
        Private Sub MeasureItemHandler(ByVal sender As Object, _
        ByVal e As MeasureItemEventArgs) Handles ListBox1.MeasureItem
            Dim g As Graphics = Graphics.FromHwnd(ListBox1.Handle)
            Dim sf As StringFormat = New StringFormat(StringFormat.GenericTypographic)
            Dim size As SizeF
            Dim height As Single = 0
            Dim oFont As New Font("Arial", 10)
    
            'measure the height of what you are about to draw
            'and let the listbox know this
            size = g.MeasureString(ListBox1.Items(e.Index), oFont, 500, sf)
            height = size.Height + 5
            e.ItemHeight = height
        End Sub
    
    mas para o outro nao faço a minima. Tenho andado a googlar e todos os sites que encontro ( poucos ) explicam "mal"...

    Se alguem souber agradecia.
     
  2. boas,

    tive a ver este codigo mas não o testei, presuponho que o erro ou melhor o que te deve faltar é a atribuição da cor. ou seja tens "Dim g As Graphics = Graphics.FromHwnd(ListBox1.Handle)", depois tens de usar o "g.fillrectangle(....)" para preencher a cor que queres no local desejado.

    espero ter ajudado
     

Partilhar esta Página