"El misterio de la variable indx" jaja

Iniciado por $Edu$, 23 Octubre 2011, 15:13 PM

0 Miembros y 2 Visitantes están viendo este tema.

$Edu$

Bueno les traigo algo que nadie hasta ahora a encontrado el porque.

El tema es asi, existe una variable declarada en General en el frmTabla llamada "indx" la cual se encarga de indicar la "pagina" de grupos en la que se encuentra el programa, ya que hago como una especie de "libro" de grupos, es decir, muestro Grupo A, Grupo B, Grupo C (esos grupos son controles) y hay botones de Anterior y Siguiente, el boton Siguiente aumenta el valor de indx para asi indicar que estara en la pagina siguiente y mi codigo oculta Grupo A, Grupo B y Grupo C, para mostrar Grupo D, Grupo E y Grupo F. Y si luego hago click en Anterior hara lo inverso.

El bug se encuentra cuando cierro el frmTabla estando en la pagina 2, es decir cierro cuando antes habia puesto Siguiente. Y luego desde el form anterior entro otra vez a frmTabla y este indx queda con el valor de antes, por lo que me genera un bug.


No se preocupen si no entendieron, simplemente hagan esto:

Vayan al frmTabla en formload y pongan un BreakPoint en "indx = 0" que eso es mi "parche" del bug. Pero ustedes fijense porque haciendo lo que dije antes el valor de indx llega con otro valor distinto a 0, y teoricamente tendria que ser 0 siempre, ya que se carga nuevamente el frmTabla.

Si miran el codigo y van hacia donde les digo entenderan.

Aca esta: http://www.mediafire.com/?gzps9610n8iok9s

Suerte :P

Elemental Code

es el valor residual, la declaraste o la usas directamente al vuelo?  :silbar:

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas

$Edu$

Miraste el proyecto? la idea es que lo miren y ver quien logra descubrirlo.


pd: Para Psyke1, mi intencion aca no es beneficiarme ya que como dije, yo "parcheo" ese bug y no tengo problema ninguno, solo quiero dejarles algo para hacer y ver que tan buenos son xD. Te digo esto por las dudas....

BlackZeroX

Cita de: $Edu$ en 24 Octubre 2011, 00:37 AM
Para Psyke1, mi intencion aca no es beneficiarme ya que como dije, yo "parcheo" ese bug y no tengo problema ninguno, solo quiero dejarles algo para hacer y ver que tan buenos son xD. Te digo esto por las dudas....

cuidado...

Dulces Lunas!¡.
The Dark Shadow is my passion.

$Edu$

Que paso? algun problema o algo por el estilo?

$Edu$

109 visitas y nadie ha podido :P Siento que seran cosas del vb6 que cada tanto pasan xD

seba123neo

Cita de: $Edu$ en 23 Octubre 2011, 15:13 PM
Bueno les traigo algo que nadie hasta ahora a encontrado el porque.

El tema es asi, existe una variable declarada en General en el frmTabla llamada "indx" la cual se encarga de indicar la "pagina" de grupos en la que se encuentra el programa, ya que hago como una especie de "libro" de grupos, es decir, muestro Grupo A, Grupo B, Grupo C (esos grupos son controles) y hay botones de Anterior y Siguiente, el boton Siguiente aumenta el valor de indx para asi indicar que estara en la pagina siguiente y mi codigo oculta Grupo A, Grupo B y Grupo C, para mostrar Grupo D, Grupo E y Grupo F. Y si luego hago click en Anterior hara lo inverso.

El bug se encuentra cuando cierro el frmTabla estando en la pagina 2, es decir cierro cuando antes habia puesto Siguiente. Y luego desde el form anterior entro otra vez a frmTabla y este indx queda con el valor de antes, por lo que me genera un bug.


No se preocupen si no entendieron, simplemente hagan esto:

Vayan al frmTabla en formload y pongan un BreakPoint en "indx = 0" que eso es mi "parche" del bug. Pero ustedes fijense porque haciendo lo que dije antes el valor de indx llega con otro valor distinto a 0, y teoricamente tendria que ser 0 siempre, ya que se carga nuevamente el frmTabla.

Si miran el codigo y van hacia donde les digo entenderan.

Aca esta: http://www.mediafire.com/?gzps9610n8iok9s

Suerte :P

si podes explicar que hay que hacer para que el programa muestre ese formulario.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

$Edu$

Perdon, es que de tanto repetirlo para que lo miren otros que han intentado me olvide xD

Inicias la app, vas a Campeonato, luego agregas 16 participantes o mas y vas a Sorteo! , luego ingresas los 16 equipos o los que hayas ingresado y Listo! , luego le das a Comenzar! y ahi aparecera el frmTabla.

Ahora le pones un BreakPoint a "indx = 0" en el form load que ese es mi "parche" para el bug y haces lo siguiente:

Presiona los botones de Siguiente y Anterior, veras que es lo que hace; lo dejas en la ultima "pagina de grupo" es decir que no se muestre "Grupo A, Grupo C y Grupo D" ya que eso hara que la variable indx sea distinta a 0 y ahora cierras el form, aceptando la pregunta que te pida.
Volveras al form anterior donde si le das a Comenzar! otra vez, vuelve a aparecer frmTabla pero parara en tu Break Point, y fijate que indx tendria que valer 0, pero vale 1 o 2, depende los Siguientes que hayas puesto.

Si sigues sin entender perdon pero dime que te explico de nuevo sin problemas

Elemental Code

no lo baje, y no lo voy a bajar.

Usas unload me o me.hide para "cerrar" el form?
Si usas me.hide nunca destruiste las variables y por ende no se crean otra vez.
si usas unload me, nose, seguire pensando

I CODE FOR $$$
Programo por $$$
Hago tareas, trabajos para la facultad, lo que sea en VB6.0

Mis programas

$Edu$

Obviamente use unload me, por eso el misterio, pero lastima que no bajes el proyecto, en fin, alguien lo descubrira cuanto antes y seguramente sera alguna estupidez pero nadie ha podido xDD