Come modificare il colore del testo di ListBox I prodotti in Visual Basic

February 3

metodo "DrawItem" di Visual Basic consente di creare controlli fantasiose. Il controllo ListBox, per esempio, visualizza gli elementi in una lista; tuttavia, è possibile modificare solo il colore del testo di ogni elemento nel controllo. Per creare una maggiore ListBox che visualizza il testo di un elemento selezionato in un colore diverso, devi fare una piccola modifica al metodo "DrawItem" del ListBox.

istruzione

Cambia colore del testo tutti gli articoli

1 Avviare Visual Studio e creare un nuovo progetto di forme visive di Windows di base. Un nuovo form denominato "Form1" si apre nella finestra di modifica.

2 Fare clic sul pulsante "Visualizza", quindi fare clic su "Strumenti" per aprire toolbox di Visual Studio.

3 Fare doppio clic sul controllo "ListBox". Visual Studio mette sul modulo e lo nomina "ListBox1".

4 Fare clic sul controllo "ListBox1" e premere il tasto "F4" per visualizzare la finestra Proprietà. Questa finestra consente di impostare le proprietà di un controllo, come il colore e le dimensioni.

5 Fare clic sulla proprietà "ForeColor". Una freccia a discesa appare accanto alla proprietà. Fare clic su tale freccia per visualizzare un menu a colori contenente schede. La scheda "Sistema" visualizza i colori di sistema di Windows; Nella scheda "Web" visualizza l'elenco dei colori web; e la scheda "Custom" consente di scegliere il proprio colore da una griglia di colore.

6 Fai clic su una di queste schede, quindi selezionare il colore che si desidera utilizzare per il testo di tutti gli elementi ListBox.

7 Fare clic sulla voce "BackColor" nella finestra Proprietà per visualizzare la sua freccia a discesa. Istruzioni che freccia per scegliere un colore come descritto nel passaggio precedente. Visual Basic utilizza quindi il colore che hai selezionato come colore di sfondo per tutti gli elementi ListBox. Procedere alla sezione successiva, se si desidera cambiare il colore di solo l'elemento ListBox selezionato.

Cambiare il colore del testo di un elemento selezionato

8 Doppio clic sulla barra del titolo del form. Il codice per il metodo "carico" del form apre e visualizza un metodo vuoto "Load".

9 Incollare il seguente codice prima dichiarazione "End Sub", che di metodo:

ListBox1.Items.AddRange (New Object () { "Articolo 1", "Voce", "Voce", "Articolo 4"})

ListBox1.DrawMode = DrawMode.OwnerDrawFixed

La prima dichiarazione aggiunge elementi al ListBox. L'istruzione successiva imposta modalità di disegno del controllo di "OwnerDrawFixed." Utilizzare questa modalità quando si desidera sovrascrivere modalità di disegno di default di Visual Basic per un controllo.

10 Incollare il codice seguente dopo la dichiarazione "End Sub" il metodo "Load" di:

Private Sub ListBox1

DrawItem (ByVal sender As Object,

ByVal e come System.Windows.Forms.DrawItemEventArgs) _

maniglie ListBox1.DrawItem

e.DrawBackground ()

Spazzola fioco come pennello = Brushes.Black

Se (e.State E DrawItemState.Selected = DrawItemState.Selected) Poi

pennello = Brushes.Green

Finisci se

e.Graphics.DrawString (ListBox1.Items (e.Index) .ToString (),

e.Font, pennello, _

e.Bounds, StringFormat.GenericDefault)

End Sub

Questo codice sovrascrive il metodo "DrawItem" del ListBox. Il metodo "DrawItem" viene eseguito ogni volta Visual Basic disegna un oggetto ListBox sul controllo.

11 Individuare l'affermazione che si legge, "pennello fioco come pennello = Brushes.Black." Questa linea di codice crea una variabile "pennello" che tiene il colore del pennello disegno predefinito. In questo caso, che il colore è "nero". Cambiare "Black" per il colore che si desidera utilizzare per disegnare gli elementi listbox non selezionati. Per esempio, se si desidera cambiare il colore elemento predefinito al rosso, sostituire l'istruzione precedente con questo:

Spazzola fioco come pennello = Brushes.Red

12 Individuare la seguente dichiarazione nel codice:

pennello = Brushes.Green

Sostituire "verde" con qualsiasi colore. Visual Basic utilizza quindi che il colore per disegnare voce selezionata del ListBox. La dichiarazione finale chiama il metodo "DrawString" che richiama gli elementi ListBox.

13 Premere il tasto "F5" per eseguire il programma. La forma appare e visualizza la ListBox e dei suoi elementi. Fare clic su un elemento per selezionarlo. Il suo colore cambia per il colore scelto per l'elemento selezionato. Tutte le altre voci mostrano il colore predefinito.

Consigli e avvertenze

  • Utilizzare la funzione "Intellisense" di Visual Studio per aiutarvi a scegliere i nomi dei colori quando aggiungendoli al metodo "DrawItem". Considerate questa affermazione in quel metodo: "Dim pennello come pennello = Brushes.Green." Quando si digita il periodo dopo "pennelli.", Viene visualizzato un menu e visualizza tutti i colori disponibili. Tab per quello che si desidera utilizzare e premere il tasto "Enter" per selezionarlo. Visual Basic ora aggiorna la riga di codice per voi.