Visual Basic - Error de depuracion - no se define etiqueta

Life is soft - evento anual de software empresarial
 
Vista:

Error de depuracion - no se define etiqueta

Publicado por Leandro (1 intervención) el 04/08/2007 23:00:23
Hola, hace bastante que no programaba en Visual Basic, y estoy armando un porgrama donde necesito que este sea ciclico y vuelva a un determinado punto del codigo.
esto lo hice insertando una etiqueta en el mismo: por ejemplo
Private Sub Form_Load()
x:
Dim a As Integer
a = 1
a = a + 1
Label1.Caption = a
For a = 1 To 1000
Next a
GoTo x
End Sub

No se que estoy haciendo mal, pero no funciona, al depurarlo se resalta en amarillo la sentencia : Private Sub Form_Load(), y dependiendo del caso, a veces si a veces no, me sale un cartelito que dice "error de depuracion: etiqueta no definida"

espero que alguien me pueda ayudar...!!! muchas gracias, Leandro.
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:Error de depuracion - no se define etiqueta

Publicado por Gundream (14 intervenciones) el 05/08/2007 13:34:23
VAAAYAAAA...
Creía que eras otro Leandro, por eso entré. Pero bueno, a ver que puedo hacer por tí.

:P

Una auténtica joyita tu código, ¿eh?
Veamos.... El GoTo te lleva de nuevo al principio... ANTES del DIM, lo que ya va a ser un problema, porque DIM no puede Dimensionar varias veces la misma variable -por lo menos, no en mi Visual Basic- Eso seria cosa de Redim...

Supongamos que lo que quisiste poner era algo como esto...

Dim a As Integer

x:
a=1
a = a + 1
For a = 1 To 1000
Label1.Caption = a
Next a
GoTo x

He cambiado también el bucle, porque no haría nada... salvo que quisieras provocar un retraso por código, cosa que en VB no tiene mucho sentido. Eso me recuerda a mis viejos GWBasic... sigh... me has caido bien y todo. :)
Problemas que veo por ahí...

1.- El bucle se ejecutaría incluso ANTES de que fuera visible en la pantalla. No verías NADA. Necesitarias un DoEvents después del Label.Caption

2.- Y para mí es un misterio por qué quieres hacer esto... es completamente incogruente, y como poco serviría para hacer un contador infinito. No pararía NUNCA. Lo mismo con procesadores multihilo -que no tengo- no se colgaría el ordenata, pero el mio lo casca fijo. :)

3.- En el Form Load, no te lo aseguro, pero lo mismo peta porque el Load se ejecuta incluso ANTES de presentar el Form en pantalla. Y como es un bucle infinito... pues ya ves.

4.- ¿Para qué sumas a+1 si luego el bucle de la misma variable va de 1 a 1000? Pondrías en el Label.Caption valores de 1 a 1000... vale, pero eso de sumar... parece que lo quisieras hacer para sumar 1 en otra variable... BUF!

Si me dices qué es lo que quieres hacer, lo mismo te oriento más, pero este código es un pequeño follón. Prueba desde el principio y hazte un esquema en un papel de lo que quieres que vaya pasando poco a poco. Te aseguro que te ayudará más que yo.

Ánimo.
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