Cobol en español
  Página de Inicio Recomiéndala Contáctame Usuarios en Linea
17
     Crea Una cuenta  
Video 1
Video 2
Video 3

Si te ha servido la web
o te han gustado los videos, colabora haciendo click en el botón.

MANUALES
TEMATICOS
BASES DE DATOS
COBOL / WINDOWS
COBOL / UNIX
HISTORIA /DOCS
 
BUSCADOR
PROGRAMANDO-Dos
TRUCOS
AÑO 2.000
TEORIA POWCOB-3
PROG. POWCOB-3
TEORIA POWCOB-5
PROG. POWCOB-5
OCX-ESCOBOL
RUTINAS/MANUALES
OCX / JUEGOS
HERRAMIENTAS
COMPILADORES
ENCUESTAS
ENLACES
FOROS
TOP 10

CHAT   Usuarios: 0
Trucos
TEMARIONúmeros Aleatorios
Sec. Escape a Impresoras
Imp. ¿Pantalla o Impresora?
Dibujar Cuadros o Líneas
Años Bisiestos
Ventana de Opciones
Campos Tipo Hora
Busqueda de Cadenas
Mandar un e-mail
Pequeño Editor Texto
Día de la Semana
Registros / Fichero
ListBox en modo caracter

Dibujar Cuadros o Líneas

(748 palabras totales en este texto)
(14658 Lecturas)   Versión Imprimible



Si bien los actuales compiladores traen sus propias ordenes para dibujar los, tan utilizados cuadros en pantalla, vamos a explicar una pequeña rutina para dibujarlos de una manera sencilla. Existen aún muchos programadores que se sirven de programas externos para dibujar previamente las pantallas e incluirlas luego en la Working-Storage Section.

Para conseguirlo nos vamos a basar en una variable de 8 dígitos que contendrá la línea y la columna de inicio y la línea y la columna final. Además necesitaremos alguna variable mas de apoyo y una línea completa de 80 columnas, lo explico:

...
WORKING-STORAGE SECTION.
01  RAYA  PIC X(80) VALUE ALL "-". (carácter 196, raya continua, no guión).
01  CUADRO.
     02  CUA1 PIC 99.
     02  CUA2 PIC 99.
     02  CUA3 PIC 99.
     02  CUA4 PIC 99.
01  CUA5      PIC 99.
01  CUA0      PIC 99.
...
PROCEDURE DIVISION.
INICIO.
     ACCEPT CUADRO LINE 1 COL 1 ERASE. (coordenadas del cuadro).
DIBUJAR.
     COMPUTE CUA5 = CUA4 - CUA2. (obtenemos el ancho del cuadro o la linea).
     DISPLAY RAYA LINE CUA1 COL CUA2 SIZE CUA5. (línea superior).
     IF CUA1 = CUA3 GO SEGUIR. (si era una linea, listo).
     DISPLAY RAYA LINE CUA3 COL CUA2 SIZE CUA5. (línea inferior).
     (ahora dibujaremos las lineas izquierda y derecha del cuadro).

     MOVE CUA1 TO CUA0.
DIBUJA1.
     ADD 1 TO CUA0 IF CUA0 > CUA3 GO DIBUJA2.
     IF CUA0 NOT = CUA3 DISPLAY SPACES LINE CUA0 COL CUA2 SIZE      CUA5.(borramos la linea por si tenía algún carácter previo).
     DISPLAY "¦" LINE CUA0 COL CUA2. (carácter 179, línea vertical).
     DISPLAY "¦" LINE CUA0 COL CUA4.
     GO DIBUJA1.
DIBUJA2.
     (ahora dibujamos las cuatro esquinas).
     DISPLAY "+" LINE CUA1 COL CUA2. (esquina superior izquierda).
     DISPLAY "+" LINE CUA1 COL CUA4. (esquina superior derecha).
     DISPLAY "+" LINE CUA3 COL CUA2. (esquina inferior izquierda).
     DISPLAY "+" LINE CUA3 COL CUA4. (esquina inferior derecha).
SEGUIR.
...


No he podido reflejar aquí los caracteres gráficos, pero son los de siempre en ASCII. Se podría mejorar, verificando que nunca la línea inferior sea mayor que la superior o que la columna derecha siempre sea menor que la izquierda, etc...

En el caso de usar el compilador de Acucobol-GT, todo esto se reduce radicalmente ya que dispone de comandos específicos para crearlos, por ejemplo:

DISPLAY BOX LINE línea COL Columna SIZE Número de columnas
LINES Número de líneas.

DISPLAY LINE LINE línea 10 COL columna SIZE longitud.

   Inicio de Página   
Sitio desarrollado con PHP-Nuke. Todos los Derechos Reservados.
PHP-Nuke es un Software Libre realizado con licencia GNU/GPL.
Página creada en Junio de 1.998, con el proposito de difundir el lenguaje Cobol en nuestra lengua.
Andres Montes [98/11]