Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

quiero que solo haga este código una vez y no mas

Estas en el tema de quiero que solo haga este código una vez y no mas en el foro de Visual Basic clásico en Foros del Web. Tengo este código y quiero que lo haga solo la primera vez que mando llamar a la ventana pero no mas veces por que cuando ...
  #1 (permalink)  
Antiguo 21/11/2005, 18:25
 
Fecha de Ingreso: noviembre-2005
Mensajes: 36
Antigüedad: 18 años, 5 meses
Puntos: 0
quiero que solo haga este código una vez y no mas

Tengo este código y quiero que lo haga solo la primera vez que mando llamar a la ventana pero no mas veces por que cuando regeso a esa ventana, el combo box se llena de mas informacion que no quiero...
*****************************
Private Sub Form_Activate()
Data1.Recordset.MoveFirst

Do While Not Data1.Recordset.EOF
Combo1.AddItem Data1.Recordset.Fields("descripcion")
Data1.Recordset.MoveNext
Loop
End Sub
*****************************

Gracias
  #2 (permalink)  
Antiguo 21/11/2005, 21:28
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Porque no lo pones en otro evento, ya sea el Initialize o el Load.
Saludos
  #3 (permalink)  
Antiguo 22/11/2005, 04:27
Avatar de MeXiCaN  
Fecha de Ingreso: mayo-2004
Ubicación: Barcelona - España , Morelia - México
Mensajes: 162
Antigüedad: 20 años
Puntos: 0
Puede crear una variable global llamada centinela

Cuando esta es 0 entra cuando no quieres que entre la activas uno.

Asi solo tienes de que declarar la variable global, hacer un set de la variable a 1, y realizar el if correspondiente a cada valor de la variable.
__________________
Un saludo, MeXiCaN :golpeado: :adios:

Poco es tanto, cuando poco necesitas. E.Bunbury

Siempre que haya una causa noble por la que luchar, siempre habrá ladrones que la apoyarán.
  #4 (permalink)  
Antiguo 22/11/2005, 10:13
Avatar de The_Pretorian  
Fecha de Ingreso: diciembre-2004
Ubicación: Lima - Peru
Mensajes: 267
Antigüedad: 19 años, 4 meses
Puntos: 0
Cita:
Iniciado por raveko
Tengo este código y quiero que lo haga solo la primera vez que mando llamar a la ventana pero no mas veces por que cuando regeso a esa ventana, el combo box se llena de mas informacion que no quiero...
*****************************
Private Sub Form_Activate()
Data1.Recordset.MoveFirst
Combo1.Clear
Do While Not Data1.Recordset.EOF
Combo1.AddItem Data1.Recordset.Fields("descripcion")
Data1.Recordset.MoveNext
Loop
End Sub
*****************************

Gracias

YO hice eso y listo solo se carga una vez...
__________________
Creo que todas las cosas suceden por algo, no es eso que los demas llaman 'Destino'. Definitivamente Dios no juega a los dados...
  #5 (permalink)  
Antiguo 22/11/2005, 13:03
 
Fecha de Ingreso: septiembre-2005
Mensajes: 76
Antigüedad: 18 años, 7 meses
Puntos: 0
Es una buena solucion pero no la mejor, el programa va a perder en rendimiento

Las dos respuestas anteriores son mejores, para que no te ahogues en un vaso de agua pone ese mismo codigo en el evento load del formulario y listo se va a ejecutar unicamente cuando se carge la primera vez.
__________________
Buby Systems
  #6 (permalink)  
Antiguo 22/11/2005, 15:35
Avatar de The_Pretorian  
Fecha de Ingreso: diciembre-2004
Ubicación: Lima - Peru
Mensajes: 267
Antigüedad: 19 años, 4 meses
Puntos: 0
Exclamación

Buenas tardes
De ser por el tema de rendimiento, usar la variable global y listo, la priemra vez le pones '0' o 'LLENO' y despues preguntas... y segun eso cargas losd atos o solo los muestras.
Atte
Jorge Diaz
Cita:
Iniciado por MeXiCaN
Puede crear una variable global llamada centinela

Cuando esta es 0 entra cuando no quieres que entre la activas uno.

Asi solo tienes de que declarar la variable global, hacer un set de la variable a 1, y realizar el if correspondiente a cada valor de la variable.
__________________
Creo que todas las cosas suceden por algo, no es eso que los demas llaman 'Destino'. Definitivamente Dios no juega a los dados...
  #7 (permalink)  
Antiguo 23/11/2005, 12:21
Avatar de v_i_n_i_c_i_o  
Fecha de Ingreso: noviembre-2003
Ubicación: Costa Rica
Mensajes: 422
Antigüedad: 20 años, 5 meses
Puntos: 0
no sería más fácil verificar si el combo ya contiene algo?, osea si aún está vacío lo llenas y si no (si ya está lleno) omites la función... así te evitas tener que usar varibles de más...
__________________
"Un experto es una persona que ha cometido todos los errores que se pueden cometer en un determinado campo" - Niels Bohr
:cool: 0!)!u!/\ :patada:
  #8 (permalink)  
Antiguo 24/11/2005, 02:52
jorevale
Invitado
 
Mensajes: n/a
Puntos:
Emplear una variable para controlar esto, y un simple If...Else... es una solución perfectamente lógica y válida.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:37.