Uso del control ComboBox

Escrito por Carla Vázquez el Martes 19 de Febrero de 2008 a las 15:40hs

El control Combobox de Visual Basic es uno de los recursos más utilizados a la hora de programar. Su comportamiento es similar al control Listbox, sólo que a diferencia de este último, el control Combobox no sólo permite la selección de una opción dentro de una lista predefinida de datos, sino además ingresar una nueva entrada.

Por lo tanto, esta herramienta resulta fundamental a la hora de definir aquel conjunto de datos. El Combobox consta de dos partes: un encabezado que corresponde al nombre de dicho conjunto (por ejemplo: Países o Sexo) y una segunda que abarca las opciones posibles (ejemplo: masculino, femenino), es decir comprende una lista de elementos que delimitan la selección del usuario. Este control cuenta con diferentes estilos o modos. El primero es una forma Simple que muestra el control Edit y el ListBox.

Gracias a la propiedad DropDownStyle, otra forma permite el despliegue de la lista hacia abajo. En principio la lista permanece oculta, mostrándose únicamente cuando el usuario presione el icono de la flecha a la derecha del control. Por lo tanto dependiendo del estilo que se utilice estará abierta la posibilidad o no para editar el campo de selección. La lista de opciones o respuestas se carga al mismo momento de diseño de la ventana.

Para llevar a cabo dicha aplicación se deberá ingresar en la página de propiedades y allí proceder a ingresar la primera opción o respuesta y aceptar (enter). Esta acción debe repetirse para cargar todas las respuestas deseadas, siendo conveniente en el caso de tratarse de un número reducido de opciones. El Combobox contiene una serie de propiedades aplicables únicamente en tiempo de ejecución, siendo las principales:

  • ListCount: sirve para indicar el número de elementos en la lista correspondiente
  • ListIndex: proporciona el número de orden del elemento que se ha seleccionado; AddItem y RemoveItem permite agregar o eliminar elementos.
  • List (n): obtiene el elemento cuyo número de orden está indicado con “n”.
  • Text: consiste en una propiedad que muestra el texto de la parte Textbox del Combobox, la cual puede introducirse a través del teclado o ser una opción seleccionada, como vimos anteriormente.

Datos útiles para programar en Visual Basic:

Valor Seleccionado:

Combo.ItemData(Combo.ListIndex)

A la hora de agregar datos, se utiliza la función Add

Combo.AddItem "Primera Hoja" Combo.ItemData(0) = 1234 Combo.AddItem "Segunda Hoja" Combo.ItemData(1) = 5678

En el caso de querer eliminar elementos, la función requerida es la siguiente:

1) Para eliminar un elemento con el índice cero:

ComboBox1.Items.RemoveAt(0)

2) Para eliminar un elemento actualmente seleccionado:

ComboBox1.Items.Remove(ComboBox1.SelectedItem)

3) Para eliminar el elemento "ejemplo":

ComboBox1.Items.Remove("ejemplo")

4) En caso de optar por eliminar todos los elementos:

ListBox1.Items.Clear()

Otra opción que brinda el recurso Combobox es permitir ordenar los elementos de la lista correspondiente, dado que no los ordena por sí solo. Por lo tanto, en caso de desear una visualización alfabéticamente ordenada se debe establecer en la propiedad “sorted” (de la ventana propiedades) el valor “true”. ¡De este modo los elementos quedarán en orden!

Espero les haya servido de ayuda!


comentarios



  1. Hola, me encuentro programando en Visual Basic .NET y access, soy nuevo en esto de programar, mi pregunta es la siguiente:

    En mi combo traigo tres campos de una tabla de mi base de datos, cundo yo selecciono algun registro de mi combo, quiero que me traiga en un datagridview los datos que corresponder al registro seleccionado.

    Cuando solo traigo un registro en mi combo (nombre) si me funciona.

    Pero yo lo quiero hacer con tres registros de mi combo (nombre, marca, presentacion).



  2. Hola... Estoy iniciando en programación y específicamente en VB porque me han sugerido que es muy bueno...
    Tengo un combobox el cual lleva una lista de elementos de texto y quiero que cuando seleccione uno de ellos me muestre en un label... Por ejemplo:
    -Tengo en la lista del combobox las siguientes opciones:
    Nombre
    Sexo
    Empleo
    -Quiero que cuando seleccione Nombre, me muestre en un label:
    Juan Pérez
    Pedro Gonzñalez
    -Quiero que cuando seleccione Sexo, me muestre en un label:
    Masculino
    Femenino
    -Quiero que cuando seleccione Empleo, me muestre en un label:
    Mecánico
    Albañil
    Plomero
    ¿Se entiende? Gracias...

agregar comentario


Se permiten las etiquetas HTML <b>, <i> y <p>. Si ingresa alguna dirección web o dirección de email serán convertidos en enlaces automáticamente.





publicidad