Ex15

4

Click here to load reader

Transcript of Ex15

Page 1: Ex15

EJERCICIO DE VISUAL BASIC

Vamos a realizar un ejercicio donde haremos que un circulo descienda por la

pantalla de forma que el inicio del recorrido parta de una posición aleatoria. Los

círculos empezaran a descender desde el momento en que se ejecute, cada

vez el circulo cambiara de color.

Empezamos con el diseño del formulario,

A este formulario le hemos cambiado el “Caption” y le hemos introducido

“Bajan !!!” , también hemos modificado la propiedad,

“BackStyle” 1.-Opaque

“BackColor” “azul”

A continuación colocaremos un control “Timer” para ejecutar de forma

automática un trozo de programa cada un tiempo determinado.

Page 2: Ex15

Las propiedades modificadas del “Timer” son,

La propiedad modificada es “Interval” a la cual le hemos introducido el valor

“20”. Este valor representa milisegundos.

Ahora pasaremos directamente a introducir el código. Primero declararemos las

variable que utilizaremos durante el código.

Después desde la rutina de “Form_load” inicializaremos las variables y los

cálculos iniciales.

Page 3: Ex15

Private Sub Form_Load()

Randomize

a = Int(Rnd * 4200)

Shape1.Left = a

c = Int(Rnd * 15)

Shape1.BackColor = QBColor(c)

End Sub

En esta rutina hemos activado el “Randomize” para inicializar el calculo de

números aleatorios.

A continuación en la variable “a” introducimos un numero entero aleatorio entre

0 y 4200 (que es el limite derecho del formulario en TWIPS).

Asignamos el valor aleatorio a la propiedad “left” del “shape”, de forma que la

posición horizontal del “shape” será cada vez diferente.

Calculamos otro numero aleatorio entre 0 y 15 y la guardamos en la variable

“C”. Ese numero lo utilizaremos para dar un color inventado al shape mediante

QBCOLOR que dispone de colores desde el valor 0 al 15.

Después desde el formulario haremos “2 clics” y accederemos a la rutina del

“Timer1_timer”, en esa rutina introduciremos ...

Private Sub Timer1_Timer()

If b < 600 Then

Shape1.Top = Shape1.Top + b

b = b + 50

Else

a = Int(Rnd * 4200)

b = 0

Shape1.Left = a

Page 4: Ex15

Shape1.Top = b

c = Int(Rnd * 15)

Shape1.BackColor = QBColor(c)

End If

End Sub

A esta rutina accederá el programa cada 20 milisegundos, de forma que

mientras el valor de “b” sea inferior a “600”, cada vez el “shape” descenderá 50

unidades. Al llegar el valor de “b” a 600 (quiere decir que hemos llegado al final

del formulario).

Entonces la variable “b” la ponemos a ”0” , para volver a la parte superior del

formulario.

Calculamos otro aleatorio en “a” para cambiar la posición horizontal del

“shape”.

Y calculamos otro aleatorio en “c” para cambiar el color del “shape”.

Finalmente almacenamos el ejercicio.