El texto en mensaje$ es desplegado dentro del
diálogo como el cursor de usuario.
Uno a tres botones en secuencia pueden
ser suministrados. El texto en el string del botón suministra tanto la etiqueta
de botón como el string de respuesta. Generalmente usted querrá que el string
de la etiqueta y respuesta sean diferentes. Esto es hecho para listar el string
de respuesta después de una coma en el string del botón. Cualquier caracter
en la etiqueta del botón puede ser cambiado a una tecla caliente precediéndola
con un ampersand. En el siguiente ejemplo se pretende aclarar esto.
Es un pequeño programa con el que una pregunta Si/No es asumida,
con "S" y "N" definidas como teclas calientes. Si el usuario
hace un "click" en la caja de cierre, una respuesta de "No"
es asumida. Observe la adición de terminadores ($0A$) al final de los string
de respuesta, para un procesamiento de entrada fácil. Note también que el "echo"
es apagado antes de la variable destinada para obtener la respuesta, y que una
coma final es suministrada. La función de los mnemónicos 'EE' y 'BE' es para
evitar que los string de respuesta y terminadores de línea se muestren en la
pantalla. Este ejemplo también toma ventaja del hecho de que el INPUT imprime
cualesquiera ítems que no pueden ser modificados.
0010 REM "Ejemplo para 'ASK'
0100 INPUT (0,ERR=0120)'ASK'("Si o No",3,"Favor indicar si o
0100:no.","&Si:S"+$0A$,"&No:N"+$0A$),'EE',A$,'BE',
0110 GOTO 0130
0120 LET A$="N"
0130 PRINT "Respuesta fue ",A$
¡CUIDADO! El mnemónico 'ASK' puede generar un !ERROR 29 con
la instrucción PRINT o WRITE si el usuario opera la caja de cierre. Asegúrese
de controlar este error.
El número 3 que se está usando antes del
comentario "Favor indicar si o no." sirve para seleccionar el tipo
de icono que automáticamente se muestra en el extremo izquierdo de la ventana
cuando es desplegada. Ese puede ser un valor del 0 al 4.
¡NOTA! Probablemente usted querrá el "echo" apagado
mientras usted entra el string de respuesta. Asegúrese luego de que el "echo"
sea restablecido en todos los casos, aún bajo la condición de error. Para evitar
que innecesarios terminadores de línea se muestren en la pantalla, utilice una
coma después del mnemónico 'ASK'.
'GETS'(título$, prompt$ [,default$])
El mnemónico 'GETS' provee un conveniente modo gráfico abreviado
para indicar al usuario un string de entrada. A diferencia de 'ASK', 'GETS'
no siempre servirá como un diálogo creado con el dispositivo de SYSGUI. No obstante,
'GETS' es simple de usar, y puede bastar hasta que otros diálogos sean creados.
El diálogo es mostrado con un título (titulo$),
una literal con una sugerencia al usuario (prompt$), y una caja de edición,
que inicialmente siempre está vacía. Sin embargo, si el parámetro opcional (default$)
es suministrado, la caja de edición contendrá el string indicado al iniciar.
Tres botones de pulsar aparecen debajo de la caja de edición:
OK, Cancelar, y Restaurar. El botón OK confirma el texto en la caja de edición
como correcto y lo introducirá, agregando un caracter de terminación de línea,
en el flujo de entrada del SYSWINDOW, justamente como si el usuario haya digitado
el texto por el teclado. Un 'click' en el botón de Cancelar (o la caja de diálogo)
generará un !ERROR 29 con el PRINT or WRITE que envió el mnemónico 'GETS'. Será
necesario controlar el error. Tanto el OK como el Cancel (así como la caja de
cierre) remueven el diálogo.
|