Visual Basic - Que se haga SOLO UNA VEZ

Life is soft - evento anual de software empresarial
 
Vista:

Que se haga SOLO UNA VEZ

Publicado por Javi (90 intervenciones) el 19/09/2007 23:53:40
Hola.
Estoy encallado y no se como resolverlo......

Quiero que al ponerse en marcha el programa, haga una serie de trabajos
SIN QUE el operador se entere de nada.
O sea, al cargarse el programa hara unos cambios de nombre de los ficheros
y algunas cositas mas, pero quiero que el que usa el programa no necesite
enterarse de nada. ¡¡¡Y ESO LO TIENE QUE HACER UNA SOLA VEZ ¡¡¡¡
SOLO AL PONERSE EN MARCHA EL PROGRAMA¡¡¡¡

Si lo pongo en el Sub-Many, el programa tarda una barbaridad en cargarse.
(Porque hasta que no ha terminado todo, no sale la primera pantalla)

Y si lo pongo en cualquiera de los Forms, cada vez que se cargue este form
volvera a hacer lo mismo.

¿Que puedo hacer? ¿Alguna idea?

HAY UNA SOLUCION (pero no me gusta)
Es hacer una pantalla de inicio (Form de inicio) con una barra deslizante
que indique que se esta cargando el programa.... y cuando termine que salga
la primera pantalla del programa...... (pero lo encuentro poco profesional)

¿Se os ocurre alguna otra solucion?

Gracias.
Un saludo.
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:Que se haga SOLO UNA VEZ

Publicado por Antoni Masana (79 intervenciones) el 20/09/2007 09:10:15
Un truco para que una funcion se ejecute una sola vez es llamarla una sola vez, esta es la más practica, pero no siempre la más facil.

Otro truco es una variable estatica o publica (depende de la complejidad) se evalua al inicio y se cambia de valor al terminar la función.

El otro tema, la pregunta es ¿Los trabajos que se deben realizar afectan al funcionamiento del resto del programa?

Si la respuesta es SI:

* Se me ocurre lo siguiente pon un RELOJ que llame a la función al inicio del programa con un intervalo suficiente para que cargue la pantalla. Cuando termine la funcion debe desactivar el reloj. Puedes poner una barra de desplazamiento.

Si la respuesta es NO:

* Ademas de la solución anterior. Pon un RELOJ que llame a la función al inicio del programa con un intervalo pequeño. Cada vez que se llame a la funcion debe hacer una fracción del trabajo, cuando termine desactivar el reloj.

Esta seguna opción es un poco más compleja, pero funciona, la implemente en un proceso.
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:Que se haga SOLO UNA VEZ

Publicado por JAVI (90 intervenciones) el 20/09/2007 20:01:25
Muchas Gracias.

Ya tengo unas ideas mas.

Salutacions Cordials

Xavier
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:Que se haga SOLO UNA VEZ

Publicado por manolo (4 intervenciones) el 20/09/2007 20:36:02
vale, xavier ya tienes unas ideas mas.

congratulesions!!

las podes compartir??

manolo
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:Que se haga SOLO UNA VEZ

Publicado por Javi (90 intervenciones) el 22/09/2007 00:16:42
Hola Manolo.....

No te entiendo. Tu pregunta no la entiendo.

"las podes compartir??"

¿¿¿Compartir??? ¿¿Compartir que???.

Si lees la respuesta de Antoni Massana (que esta mas arriba) veras esas
"nuevas ideas" igual que las he visto yo.

Creo que ya estan compartidas..... no?

No estan escondidas...

En fin... no te entiendo.

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