Power Builder - Como hacer ventanas modales

 
Vista:

Como hacer ventanas modales

Publicado por Molon (67 intervenciones) el 21/08/2003 09:38:04
hola de nuevo. Mi problema (entre otros) es el como hacer ventanas modales.
Es decir, yo consigo hacer una funcion con una serie de parametros que me muestren una windows con botones, color determinado, etc, pero como hago para que no continue ejecutando codigo y espere a que una tecla sea pulsada para ejecutar un codigo u otro???.

Al estilo
if MessageBox("Dar de baja", "Va a eliminar un registro.",none!, OKCancel!, 1) = 1 then

end if

gracias !!
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:Como hacer ventanas modales

Publicado por Ricardo (1957 intervenciones) el 21/08/2003 16:08:19
Si tienes una ventana tipo messagebox, no entiendo porque deberia de ejecutar codigo sin ser este programado, es decir, el codigo debera estar en el evento apropiado, a fin de que solo se ejecute en base a la interaccion del usuario.

Asi bien, puedes tener un window con botones y este no hara nada hasta que no sean pulsados, siempre y cuando no indiques lo contrario.

Ahora si esta ventana forma parte de otro proceso y al dispararla deseas que el padre detenga sus procesos, de igual manera crea un evento para controlar dicha pausa.

Suerte!
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:Como hacer ventanas modales

Publicado por Pedro López (68 intervenciones) el 22/08/2003 08:38:40
En las propiedades de la ventana, debes cambiar la propiedad "Window Type". Para que la ventana sea modal, debes poner "Response" (por defecto es "Main").

Para devolver algún dato desde la ventana modal, debes cerrarla con la función CloseWithReturn.
Por ejemplo, si la ventana tiene dos botones (Aceptar y Cancelar), puedes poner en el clik del botón Aceptar:
CloseWithReturn(Parent, "1")
En el clik del botón Cancelar:
CloseWithReturn(Parent, "2")

Después, en la ventana que abre a la modal, debes recoger el valor devuelto con el objeto Message.

// Ejemplo
string ls_retorno

// Abrir la ventana modal
OpenWithParm(w_modal, "Va a eliminar un registro.")

// comprobar el valor retornado
ls_retorno = Message.StringParm
CHOOSE CASE ls_retorno
CASE "1"
// Ha pulsado el botón "Aceptar"
CASE "2"
// Ha pulsado el botón "Cancelar"
END CHOOSE
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