none
¿Como hacer un label no editable por código? RRS feed

  • Pregunta

  • He bueno espero se entienda bien mi pregunta es tal y como dice, bueno trataré de explicarlo lo mejor que pueda.

    Tengo un menú que se maneja mediante las teclas de arriba, abajo, derecha, izquierda; las teclas de arriba y abajo sirven para desplazarse entre los ítems y las teclas de izquierda y derecha sirven para seleccionar o de-seleccionar un ítem y por último tengo un label que cuenta la cantidad de ítems seleccionados.


    Ahora mi duda es la siguiente:

    Para contar los ítems seleccionados uso este código y aparte dejaré el link para que vean el resto del código

    https://pastebin.com/raw/C6sjKrAQ

    ContadorItems.Text += 1

    -----------------------------------------------------------------------------------------------------------

    Ahora cuando yo presiona la tecla derecha en un item ya seleccionado se sigue sumando y lo que yo quiero es que eso no pase, que cuando ya este seleccionado al presionar la tecla derecha ya no se pueda seleccionar y por ende ya no continué sumando en el label de ContadorItems, si alguien puede hacerlo me ayudaría mucho y gracias de ante mano :D.


    • Editado iJorgePc viernes, 27 de julio de 2018 23:50
    viernes, 27 de julio de 2018 23:42

Todas las respuestas

  • Hola iJorgePc,

    La verdad no entiendo el porque utilizas el 'Label' y no otros controles que se adapten fácilmente a tu requerimiento, como un 'ComboBox'.

    [-] ...  cuando yo presiona la tecla derecha en un item ya seleccionado se sigue sumando ... que cuando ya este seleccionado al presionar la tecla derecha ya no se pueda seleccionar y por ende ya no continué sumando en el label de ContadorItems...

    Pero eso es una simple validación, antes de sumar el contador tienes que verificar si ya está seleccionado o no.

    Según tu imagen, si es Verde está seleccionado, por lo que al utilizar la tecla antes de sumar validar (si tienes otro flag que validar mejor), si es Verde no entra al If y no sumaría el contador.

    'Si la letra no es verde es porque NO está seleccionado, entonces sumamos
    If Not Label1.ForeColor = Color.Green Then
        ContadorItems.Text = (cont + 1).ToString()
    End If

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    sábado, 28 de julio de 2018 8:08