Tecnología

Inicio

Cómo cambiar el color del texto de los artículos ListBox en Visual Basic

método "DrawItem" de Visual Basic le permite crear controles imaginativas. El control ListBox, por ejemplo, muestra elementos de una lista; Sin embargo, sólo se puede cambiar el color del texto de cada elemento en el control. Para crear un cuadro de lista mejorada que muestra el texto de un elemento seleccionado en un color diferente, usted tiene que hacer un pequeño cambio en el método "DrawItem" del cuadro de lista.

Instrucciones

Cambiar el color del texto de todos los artículos

1 Lanzamiento de Visual Studio y crear un nuevo proyecto de Windows Forms de Visual Basic. Un nuevo formulario denominado "Form1" se abre en la ventana de edición.

2 Haga clic en el botón "Ver", luego haga clic en "caja de herramientas" para abrir la caja de herramientas de Visual Studio.

3 Haga doble clic en el control "ListBox". Visual Studio lo sitúa en el formulario y lo denomina "ListBox1."

4 Haga clic en el control "ListBox1" y pulse "F4" para ver la ventana Propiedades. Esta ventana le permite configurar las propiedades de un control, tales como el color y el tamaño.

5 Haga clic en la propiedad "ForeColor". Una flecha desplegable aparece junto a la propiedad. Haga clic en la flecha para ver un menú de color que contiene pestañas. La pestaña "Sistema" muestra los colores del sistema de Windows; la ficha "Web" muestra la lista de colores Web; y en la pestaña "Custom" le permite elegir su propio color de una cuadrícula de colores.

6 Haga clic en una de estas pestañas, a continuación, haga clic en el color que desea utilizar para el texto de todos los artículos ListBox.

7 Haga clic en el elemento "BackColor" en la ventana Propiedades para mostrar su flecha desplegable. Haga clic en la flecha para elegir un color como se describe en el paso anterior. Visual Basic utiliza entonces el color que ha seleccionado como color de fondo para todos los elementos de ListBox. Continuar con la siguiente sección si desea cambiar el color de sólo el elemento ListBox seleccionado.

Cambiar el color del texto de un elemento seleccionado

8 Haga doble clic en la barra de título del formulario. El código para el método de "carga" del formulario se abre y muestra un método vacío "Load".

9 Pegue el siguiente código antes de la declaración "End Sub" de este método:

ListBox1.Items.AddRange (new Object () { "Artículo 1", "artículo", "artículo", "Punto 4"})

ListBox1.DrawMode = DrawMode.OwnerDrawFixed

La primera sentencia añade elementos al cuadro de lista. La siguiente declaración establece el modo de dibujo del control a "OwnerDrawFixed." Utilice este modo cuando se desea anular el modo de dibujo por defecto de Visual Basic para un control.

10 Pegue el código siguiente después de la declaración "End Sub" del método "Carga":

Private Sub ListBox1

DrawItem (remitente de ByVal como objeto,

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

maneja ListBox1.DrawItem

e.DrawBackground ()

Como cepillo de Dim Cepillo = Brushes.Black

Si (e.State Y DrawItemState.Selected = DrawItemState.Selected) Entonces

Cepillo = Brushes.Green

Terminara si

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

e.Font, cepillo, _

e.Bounds, StringFormat.GenericDefault)

End Sub

Este código sustituye el método "DrawItem" del cuadro de lista. El método "DrawItem" cada vez que se ejecuta Visual Basic dibuja un elemento ListBox en el control.

11 Busque la instrucción que dice: "A medida que el cepillo Cepillo Dim = Brushes.Black." Esta línea de código crea una variable "cepillo" que mantiene el color del pincel de dibujo por defecto. En este ejemplo, que el color es "Negro". Cambiar "Negro" para el color que desea utilizar para dibujar los elementos cuadro de lista no seleccionados. Por ejemplo, si usted quiere cambiar el color de elemento por defecto a rojo, reemplace la instrucción anterior con esto:

Como cepillo de Dim Cepillo = Brushes.Red

12 Busque la instrucción siguiente en el código:

Cepillo = Brushes.Green

Reemplazar "verde" con cualquier color. Visual Basic utiliza entonces ese color para dibujar elemento seleccionado del cuadro de lista. La declaración final llama al método "DrawString" que atrae a los artículos ListBox.

13 Pulse la tecla "F5" para ejecutar el programa. El formulario aparece y muestra el cuadro de lista y sus elementos. Haga clic en cualquier elemento para seleccionarlo. Su color cambia al color que ha elegido para el elemento seleccionado. Todos los demás elementos que se mostrarán el color predeterminado.

Consejos y advertencias

  • Utiliza la función de "Intellisense" de Visual Studio para ayudarle a elegir los nombres de color cuando los añade al método "DrawItem". Considere esta declaración en ese método: "Dim cepillo Cepillo = Brushes.Green." Al escribir el punto después de "cepillos.", Aparece un menú y muestra todos los colores disponibles. Pestaña a la que desea utilizar y pulse "Enter" para seleccionarlo. Visual Basic ahora actualiza la línea de código para usted.