none
Incrementar un numero con imagenes

    Pregunta

  • Hola.

    El código siguiente es para dibujar un numero entero en tres PictureBox  001, 002 etc. hasta 999.

    En un control ImageList hay 10 imágenes desde el 0 al 9.

            If Label1.text = "0" Then Pbx101.Image = IlCplt.Images(0) : Pbx102.Image = IlCplt.Images(0) : Pbx103.Image = IlCplt.Images(0)
            If Label1.text = "1" Then Pbx101.Image = IlCplt.Images(0) : Pbx102.Image = IlCplt.Images(0) : Pbx103.Image = IlCplt.Images(1)
            If Label1.text = "10" Then Pbx101.Image = IlCplt.Images(0) : Pbx102.Image = IlCplt.Images(1) : Pbx103.Image = IlCplt.Images(0)
            If Label1.text = "20" Then Pbx101.Image = IlCplt.Images(0) : Pbx102.Image = IlCplt.Images(2) : Pbx103.Image = IlCplt.Images(0)
            If Label1.text = "29" Then Pbx101.Image = IlCplt.Images(0) : Pbx102.Image = IlCplt.Images(2) : Pbx103.Image = IlCplt.Images(9)
            If Label1.text = "(etc)" Then Pbx101.Image = IlCplt.Images(0) : Pbx102.Image = IlCplt.Images(3) : Pbx103.Image = IlCplt.Images(9)

    Necesito una solución para no tener que escribir las 999 líneas de código.

    Muchas gracias por vuestra ayuda.


    Rafael FM

    viernes, 17 de marzo de 2017 17:03

Respuestas

  • Dim n As Integer = Integer.Parse(Label1.Text)
    
    Pbx101.Image = IlCplt.Images(n \ 100) : Pbx102.Image = IlCplt.Images((n Mod 100) \ 10) : Pbx103.Image = IlCplt.Images(n Mod 10)
    

    • Marcado como respuesta RafaelFM viernes, 17 de marzo de 2017 17:45
    viernes, 17 de marzo de 2017 17:34

Todas las respuestas