Terminemos “elegir”

Continuamos el sub elegir donde los habíamos dejado en el post anterior.

Con esta última parte comenzamos creando los controles textbox y label de las matrizobjetos, cuya cantidad está determinada por la variable largocadena.

Recorremos con un bucle  fornext todos y cada uno de los caracteres creando tantos controles textbox y label como caracteres tenga la cadena, incluídos espacios vacíos. A los label le asignamos un color que los haga visibles a través de la propiedad:

label.Background = Color.Black (black=negro)

textbox.X = (x * 6 + x) * 3 + 2
textbox.Y = 180
textbox.width = 18
textbox.height = 40
textbox.visible = TRUE

Posicionamos los textbox con respecto al eje x (izquierda del formulario) y con respecto al textbox anterior.

Con .y ponemos la distancia en pixeles desde el borde superior del formulario, .width es el ancho, .heigth el alto.

textbox.Y = 180 + textbox.height = 40 + 10 px separación  nos da label.y = 230

Con la función MID leemos los caracteres de la cadena, luego lo asignamos a la propiedades text del textbox y añadimos el mismo a la matriz, lo bloqueamos para que el usuario no pueda escribir en él (Textbox.enabled=False)

IF textbox.text = ” ” THEN
textbox.Background = Color.Blue
‘restar espacios vacios a la variable letras
letras = letras – 1
ELSE
textBox.Visible = FALSE

END IF

next

Si no hay texto =”” ( es igual a espacio vacío) le cambiamos el color de fondo (Background) por Azul(Blue). Esto permite al usuario ver la cantidad de palabras y cúantas letras tiene cada una. Restamos los  espacios entre  a la variable letras    y en caso contrario hacemos el textbox invisible (Visible =False).

Aquí estamos usando una estructura de decisión que comienza con un If condición_uno then hacemos esto, else no hacemos nada o hacemos otra cosa. Termina siempre con un End if. y Puede en su forma más básica If-then-endif, donde evalúa una única condición y si no se cumple se sigue de largo.

Ejemplo 1:Si(IF) llueve entonces(THEN)llevamos paraguas.Terminado (ENDIF).

Ejemplo 2:Si(IF) llueve entonces(THEN) llevamos paraguas si no (else)no lo llevamos. terminado (ENDIF).

Esta estructura no se limita a evaluar una sola condición. En lugar de else podemos poner else if donde evaluamos otra condición ( en nuestro caso sería está nublado  pero no llueve) lo pensamos.

El next del final nos remite al for, donde se repetirá el ciclo letra por letra, recorriendo los procesos recién estudiados.

Luego hay un Endif, que cierra el if del principio, el que controlaba la variable inicializado.

Si nos olvidamos de cerrar una estructura de decisión, al tratar de ejecutar el programa que estamos creando (f5) gambas nos avisará del error.

txtletra.SetFocus
txtacertar.text = letras

Por último hacemos foco en txtletra (.Setfocus) y escribimos el valor de la variable letras en el textbox correspondiente. Con esto se termina este procedimiento y el formulario aparece ante el jugador listo para usarse…… en apariencia.
Aún nos queda decirle como comprobar aciertos, errores y actuar en consecuencia. Hasta la próxima.

Anuncios
Esta entrada fue publicada en programación y etiquetada . Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s