Los formularios y sus tipos se explican en la sección Componente de formulario.
La página actual describe cómo se deben presentar los formularios de texto.
La sentencia
converse es suficiente para proporcionar al usuario acceso a un único formulario de texto fijo. El flujo lógico del programa sólo continúa después de que el usuario responde al formulario visualizado. También se puede construir la salida a partir de varios formularios, como en el siguiente caso:
- Al principio de la salida, un formulario fijo identifica una empresa que realiza una compra y un número de pedido
- En un área flotante subsiguiente, una serie de formularios flotantes formateados de forma idéntica identifican cada elemento del pedido de la empresa
- Al final de la salida, un formulario fijo indica el número de pantallas necesarias para desplazarse por la lista de elementos
Son necesarios dos pasos:
- En primer lugar, construya la salida de pedido y elemento codificando una serie de sentencias display, cada una de las cuales añade un formulario a un almacenamiento intermedio de tiempo de ejecución pero no presenta los datos en pantalla. Cada sentencia display actúa sobre uno de los siguientes formularios:
- Formulario superior
- Formulario flotante, presentado mediante una sentencia display que se invoca repetidamente en un bucle
- Formulario inferior
- A continuación, el entorno de ejecución EGL presenta todos los formularios de texto colocados en almacenamiento intermedio al dispositivo de salida como respuesta a una de estas dos situaciones:
- El programa ejecuta una sentencia converse; o bien
- El programa finaliza.
En la mayoría de casos, el último formulario de la salida de pantalla se presenta codificando una sentencia converse en lugar de una sentencia display.
Cada formulario fijo tiene una posición en pantalla, de modo que no importa el orden en que se especifican los formularios, en relación entre sí y en relación con la visualización repetida de los formularios flotantes. El contenido del almacenamiento intermedio se borra cuando la salida se envía a la pantalla.
Si se recubre un formulario de texto con otro, no se produce ningún error, pero se aplica lo siguiente:
- Si un formulario parcial recubre algunas líneas de otro formulario fijo, EGL sustituye el formulario existente sin borrar el resto de la salida del almacenamiento intermedio.
Si desea borrar la salida existente antes de visualizar el nuevo formulario, invoque la función de
sistema ConverseLib.clearScreen antes de emitir la sentencia display o
converse para el nuevo formulario.
- Si utiliza una sentencia display o converse para colocar una correlación flotante más allá de la parte inferior del área flotante, se borran todos los formularios flotantes de este área flotante y el formulario añadido se coloca en la primera línea de la misma área flotante.
- Si un formulario flotante recubre un formulario fijo, se aplica lo siguiente:
- El formulario flotante sólo sobreescribe las líneas del formulario fijo que están en el área flotante
- Si una línea del formulario flotante que incluye un campo de longitud variable sobreescribe una línea del formulario fijo, el resultado es imprevisible.
Tanto si se presenta un formulario como si se presentan muchos, el destino de la salida es el dispositivo de pantalla en el que el usuario empezó la unidad de ejecución.