Cómo obligar al usuario a proporcionar una entrada válidaHola ,
Estoy tratando de obligar al usuario a dar una entrada válida: visualizo una ventana modal y le pido que dé un valor.
Si este valor es una cadena diferente a "", entonces el código debe continuar usando el valor dado. De lo contrario, la secuencia de comandos debería colgarse o solicitar al usuario que proporcione la entrada correcta.
Intenté usar una ventana modal + ocultar el botón Aceptar, pero de alguna manera, no funciona (ver código adjunto).
Por favor ayuda.
win = New Window( "Set a Value",
<<MODAL></MODAL>
Re: Cómo forzar al usuario a proporcionar una entrada válidaPrueba este enfoque:
Names Default to Here( 1 );
win = New Window( "Set a Value",
<<MODAL></MODAL>
Re: Cómo forzar al usuario a proporcionar una entrada válidaExcelente !!!!
¡hace el 99% del trabajo!
para ser 100%, necesito hacer 2 modificaciones:
- comentar el código del botón "cancelar" -> fácil
- agregue algo para salir del código completo en caso de que el usuario quiera hacer trampa y clics en el símbolo de "cruz" para cerrar la ventana modal "ganar" sin dar una cadena.
Sabes como hacer esto ?
Re: Cómo forzar al usuario a proporcionar una entrada válidaHola @samir ,
@markbailey Tiene un muy buen punto de partida. Lo modifiqué un poco a lo que parecía que buscabas: el usuario ingresaba un número.
Names Default To Here( 1 );
win = New Window( "Set a Value",
<<MODAL></MODAL>
También puede probar la opción On Validate (), pero creo que esto devuelve una lista de cadenas en lugar de una variable. En el caso anterior, la nueva variable es "contenido" y podría pasarse a otra función o código JSL que haga algo con ella.
También tenga en cuenta que si invoca el cuadro de variables como un Cuadro de edición de números, JMP sabe que no debe permitir nada más que números, positivos o negativos. Entonces, si ingresan cualquier cosa menos un número, la ventana permanece abierta. No creo que pueda manejar números imaginarios sin un complemento especial.
¡Espero que esto ayude!,
DS
Re: Cómo forzar al usuario a proporcionar una entrada válidaPrefiero usar explícitamente un botón Cancelar, pero el diseño de su diálogo es asunto suyo.
Esta versión modificada del ejemplo que mostré anteriormente debería manejar el caso del usuario haciendo clic en Cancelar o en el botón de cerrar ventana.
Names Default to Here( 1 );
// put up dialog box for user entry
win = New Window( "Set a Value",
<<MODAL></MODAL>
Re: Cómo forzar al usuario a proporcionar una entrada válidaExcelente !
Funciona perfectamente.
Thans