Visual Basic - Secuencial

Life is soft - evento anual de software empresarial
 
Vista:

Secuencial

Publicado por Leopoldo (7 intervenciones) el 19/12/2006 16:06:48
Soy novato en la programación y estoy intentando aprender de manera autodidacta, la cuestión es que estoy atrancado en algo que quiero hacer y agradeceria una manita. El problema es el siguiente.
Pretendo introducir una secuencia de letras en una caja de texto. "abcdefg...."
al pulsar un boton debe de ocurrir que las letras se presenten de manera consecutiva y de una en una en la caja de texto y con un retardo de tiempo de medio segundo entre cada una.

Lo que no se como hacer es lo del retardo y que se presenten de una en una, es decir primero la "a" se borra la "a" y aparece la "b" y asi sucesivamente, es decir en la caja de texto solo debe de aparecer una letra cada vez.

Muchas gracias por la ayuda
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:Secuencial

Publicado por AlbertoV (200 intervenciones) el 19/12/2006 16:58:06
Para el tiempo tendrías qeu usar un control Timer, con la propiedad Timer.Interval = 500 si querés que demore medio segundo, ya que el intervalo lo acepta en milésimos de segundo.
Para ir tomando las letras consecutivamente encuentro dos posibilidades: una sería usar Mid de la siguiente forma: ponés todo el abecedario en una variable string, llamémosle ABCD, dimensioná también una variable Conta como Integer

ABCD = "abcdefghijklmnopqrstuvwxyz"
Conta = 1

en el evento del Timer:

Private Sub Timer1_Timer()

Picture1.Top = Picture1.Top - Velo
If Picture1.Top < Yt Then
Picture1.Top = Yt
BtSema_Click 0
Else
If Picture1.Top > 0 Then
Picture1.Top = 0
BtSema_Click 0
End If
End If
End Sub
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

RE:Secuencial

Publicado por AlbertoV (200 intervenciones) el 19/12/2006 16:58:08
Para el tiempo tendrías qeu usar un control Timer, con la propiedad Timer.Interval = 500 si querés que demore medio segundo, ya que el intervalo lo acepta en milésimos de segundo.
Para ir tomando las letras consecutivamente encuentro dos posibilidades: una sería usar Mid de la siguiente forma: ponés todo el abecedario en una variable string, llamémosle ABCD, dimensioná también una variable Conta como Integer

ABCD = "abcdefghijklmnopqrstuvwxyz"
Conta = 1

en el evento del Timer:

Private Sub Timer1_Timer()

Picture1.Top = Picture1.Top - Velo
If Picture1.Top < Yt Then
Picture1.Top = Yt
BtSema_Click 0
Else
If Picture1.Top > 0 Then
Picture1.Top = 0
BtSema_Click 0
End If
End If
End Sub
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

RE:Secuencial

Publicado por AlbertoV (200 intervenciones) el 19/12/2006 17:08:10
ESTE ES EL QUE VALE
Disculpá los dos anteriores, se chifló el sistema y me mandó 2 veces el mensaje a medio escribir. Lo que quería decir era esto:

Para el tiempo tendrías que usar un control Timer, con la propiedad Timer.Interval = 500 si querés que demore medio segundo, ya que el intervalo lo acepta en milésimos de segundo.
Para ir tomando las letras consecutivamente encuentro dos posibilidades: una sería usar Mid de la siguiente forma: ponés todo el abecedario en una variable string, llamémosle ABCD, dimensioná también una variable Conta como Integer

ABCD = "abcdefghijklmnopqrstuvwxyz"
Conta = 1

en el evento del Timer:

Private Sub Timer1_Timer()
Text1.Text = Mid(ABCD,Conta,1)
Conta = Conta + 1
If Conta > 26 Then
Timer1.Enabled = False
Conta=1
End If

El If Conta es para no pasarte del largo de la variable.
La otra forma sería usar Choose, pero si estás empezando mejor usá esta.
El botón que inicia la secuencia solo tiene que poner Timer1.Enabled = True.
Bueno, espero que no se te arme lío con los dos mensajes anteriores.
Saludos.
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