Visual Basic - Recorrer elementos de un Vector

Life is soft - evento anual de software empresarial
 
Vista:

Recorrer elementos de un Vector

Publicado por Guillermo Lladós (1 intervención) el 30/10/2007 22:21:40
Que tal gente? estoy aqui para pedir ayuda sobre un problemita que tengo y trate de mil formas de solucionarlo y sinceramente no me sale. Les comento sobre mi apliación: Es una apliacion creada en visual basic, en donde cargo un vector y una vez cargado quiero que me muestre cada uno de los elementos en forma secuencial en un label el cual es parpadeante. O sea lo que quiero es que en el label me muestre el primer elemento del vector y despues de un periodo de tiempo pase al segundo y asi hasta el final del vector y vuelva a empezar. Les dejo lo que tengo en codigo para que me lo corrijan y me ayuden por favor. Desde ya muchisimas gracias.
En el formulario tengo un label y un timer nada mas. De este modo tan solo logro que me muestre el ultimo elemento "Brasil" y queda parpadeante nada mas yo quiero que pase por los tres elementos. Quiero que Muestre "Argentina" parpadee de ahi pase a "Perú" parpadee pase a "Brasil" parpadee y de ahi que vuelva a empezar. Muchas gracias desde ya a todos.

Codigo:

Private Sub Timer1_Timer()
Dim paises(0 To 2) As String

' Llena el vector con datos
paises(0) = "Argentina"
paises(1) = "Perú"
paises(2) = "Brasil"
' Recorre los elementos del vector

For x = x To 2

Label1 = paises(x)

Next x



Me.Label1.Visible = Not Me.Label1.Visible
DoEvents
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Recorrer elementos de un Vector

Publicado por Richard Montero (25 intervenciones) el 31/10/2007 01:28:44
Guillermo:

Intentá con este código

Este es todo el código que debe tener el formulario:

Option Explicit
Dim i As Integer
Dim paises(0 To 2) As String

Private Sub Form_Load()
Timer1.Interval = 50
' Llena el vector con datos
paises(0) = "Argentina"
paises(1) = "Perú"
paises(2) = "Brasil"
i = 0
End Sub

Private Sub Timer1_Timer()
Static j As Integer
If j / 10 = Int(j / 10) Then
i = i + 1 'Cada 10 parpadeos cambia de pais
End If
If i > UBound(paises) Then
i = 0
End If
j = j + 1
If j > 1000 Then j = 0 'Evita el desbordamiento de j
Label1.Caption = paises(i)
Label1.Visible = Not Label1.Visible
End Sub

Saludos
Richard
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar