Visual Basic - MsgBox

Life is soft - evento anual de software empresarial
 
Vista:

MsgBox

Publicado por Adrian (16 intervenciones) el 27/05/2003 19:00:17
Hola. Estoy creando un juego y el problema que tengo es el siguiente.
A medida que el juego transcurre, van apareciendo diferentes mensajes (preguntas, avisos, etc) de un formulario que yo cree. Pero al aperecer dicho formulario el programa sigue corriendo sin esperar la orden del usuario. Por ejemplo, cuando un equipo es eliminado en mi juego se muestra el mensaje, pero en vez de esperar a que el usuario haga click en "Ok" (o "Si", "No", etc), este sigue trabajando.
Como puedo solucionarlo?

PD: En este caso el MsgBox de VB no me seriviria ya que el mensaje debe aparecer con imagenes de fondos, botones raros y otro monton de idioteses.
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:MsgBox

Publicado por Dark_MAC (199 intervenciones) el 27/05/2003 19:05:59
pues ponle en la propiedad load de tu msgbox que pare los temporizadores.
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:MsgBox

Publicado por Adrian (16 intervenciones) el 27/05/2003 21:58:51
Como puedo hacer eso?
Recuerda que ese "MsgBox" es simplemente un formulario mas, al cual yo le digo asi.
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:MsgBox

Publicado por juan (30 intervenciones) el 27/05/2003 23:28:07
Hola, creo que comprendí lo que Dark_MAC quiso decirte... ahí va:

que desde el evento LOAD del formulario al que llamas MSGBOX, escribas la siguiente instrucción:

' Esto detiene la ejecución de los ciclos del control...
FormularioQueTieneElControl.ElControlTimer.Enabled=false

' Despues de esto se detiene el control timer que estaba corriendo...
' Haces todo lo que quieras (mostras los mensajes, etc, y cuando quieras que continue con la ejecución, ejecutá la siguiente instrucción, pero esta vez en el evento UNLOAD del formulario MSGBOX:

' Esto dispara la ejecución de los ciclos del control (donde se habia detenido)...
FormularioQueTieneElControl.ElControlTimer.Enabled=true

Espero haber sido bastante claro, cualquier duda postealo que si podemos te ayudamos.
Suerte
Juan.
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:MsgBox

Publicado por Adrian (16 intervenciones) el 28/05/2003 15:38:59
"cualquier duda postealo que si podemos te ayudamos."
No digas que no lo dijistes. ;-)
Disculpa mi ignorancia, soy muy nuevo en esto. Pero no estoy usando ningun control Timer para esto. Me estas diciendo que cree uno?
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:MsgBox

Publicado por juan (30 intervenciones) el 28/05/2003 15:55:42
en realidad, todos los ejemplos de juegos que vi hasta ahora utilizan más de un control timer, por que para el juego (según como este diseñado) necesitas un bucle (como mínimo) que vaya controlando lo que el usuario hace (preciona las teclas de movimiento, preciona ENTER, o lo que sea)...
Ahora, ¿¿vos que tipo de juego estas haciendo??, ¿¿utilizas algún bucle para controlar lo que el usuario haga??, ¿¿tu juego tiene objetos en movimiento??... mmm... contame un poquito más para ver como viene la mano.
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:MsgBox

Publicado por Adrian (16 intervenciones) el 28/05/2003 17:50:02
Es un juego de mesa que estoy haciendo en compu y por ende es por turnos.
Lo que me gustaria saber es si hay posibilidad de detener la ejecucion, seguir con otra y luego continuar la primera cuando yo lo desee.
Esto en mi programa se aplicaria de la siguiente forma:
El programa corre, en el momento que desea mostrar el mensaje, se detiene, carga el mensaje, al hacer click en el boton de "Ok" (por ejemplo) hacer que siga corriendo desde el punto en que se detuvo.
Creo que si se puede seria la solucion perfecta
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:MsgBox

Publicado por juan (30 intervenciones) el 28/05/2003 20:03:42
Probá de ejecutar el formulario llamado MSGBOX de la siguiente forma...

MSGBOX.show 1

de esta forma se abrirá el formulario de forma "modal", esto quiere decir, que hasta que dicho formulario no se cierre, el resto de los procesos no continuarán...

Fijate si te sirve, si no posteate nuevamente, y vemos que hacemos...
Saludos.
Juan.
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:MsgBox

Publicado por Adrian (16 intervenciones) el 28/05/2003 21:29:08
Tampoco. El formulario esta sin bordes (bordstyile=0). De esa forma no funciona
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