none
Asignar valores a items combobox RRS feed

  • Pregunta

  • Buen día.

    Estoy desarrollando una interfaz donde el usuario pueda elegir la velocidad para arrancar un motor, de baja, media, alta. 

    Pero yo asignarle un valor a lo que el usuario elija. por ejemplo baja=100, media=150 etc, pero asignárselo a la variable de velocidad en mi instrucción de ejecutar el movimiento.

    Por ejemplo si el usuario elije baja la variable V=100.

    private: System::Void comboBox1_SelectedIndexChanged(System::Object^  sender, System::EventArgs^  e) { 
    						
    	}

    Ese es el código que proporciona el comboBox.

    Espero me puedan ayudar!

    jueves, 8 de febrero de 2018 22:43

Todas las respuestas

  • Un combo box pude contener items que se muestran como texto. Bien eso es lo normal, pero aunque muestren texto los items pueden ser clases o tipos de datos más complejos que un simple string que si es lo que muestra.

    Dicho esto podrias crear una clase que se llamara VelocidadesMotor con la propiedad Codigo, DEscripcion y VElocidad

    de forma que una instancia de VElcoidadesMotor podria tener Baja, Baja, 100 en sus propiedades y asi con el resto.

    `public class VelocidadesMotor

    {

    string  Codigo {get;set}

      string Descripicon {get;set;}

    int Velocidad {get;set;}

    }

    Tambien puedes añadir un construactor para que rellen tood automaticamente asi

    VelocidadesMotor(stirng cod, stirng desc, int velo) {

    this.Codigo = cod;

    this.Descripcion = desc;

    this.Velocidad = velo

    ´}

    Ahora que tienes 3 insntacias con las diferetnes veleciodades puedes insertarlas en el combobox no obstante para que muestren las descripcion o codigo deberías enseñarle al combobox que mostrar, y lo más facil es en la clase sobreescribir e(overide) el metodo tostring() de manera que el tostring sea imprimir o devuelva el valor de descripcion

    proteted override ToString()

    { return this.Descripcion; }

    Bien Ahora puedes ñaadir al combobox los tres elementos por ejemplo mediante la declaración inline de un array de 3 VelocidadesMotor asi:

    this.ComboBox1.ITems.Cler();

    this.ComboBox1.ITems.AddRange(new VelocidadesMotor[] {new VelocidadesMotro("Baja","Baja",100), new VelocidadesMotor("Media","Media",150).......);

    Ahora tu comboxbox te mostraria una lista con baja, media , alta ....

    Cuando selecciones un elemento en tu ocmbobox buscalor mediante SelectedItem oy haz un cast al tipo VelocidadesMotor asi:

    VelocidadesMotor vm = (VElocidadesMotor)Combobox1.SelectedItem;

    y ahora en vm tienes los valores del item seleccionado.

    viernes, 9 de febrero de 2018 0:01