| Artículos | 01 FEB 1996

Truco 143: Presentaciones en modo texto

Tags: Histórico
Aurelio Llorente.

Parece ser que el maravilloso MS-DOS y sus modos texto de pantalla tienen sus días contados, o por lo menos eso es lo que nos quiere vender Bill Gates y su majestuoso Windows 95, pero antes de que esto ocurra y pensando en todos aquellos programadores que utilizan estos modos texto en sus programas, quiero presentarles este truco que creo les será de mucha utilidad a la hora de presentar estas dichosas pantallas de modo texto.

Quién no ha visto alguna vez algún programa en el que la pantalla se presenta poco a poco de forma aleatoria, o de abajo a arriba como si fuera un telón de un teatro, o a través de unas líneas que se entrecruzan (como en los telediarios de Antena 3), pues bien, gracias a este truco usted podrá incluir este tipo de presentaciones en sus programas para hacer aparecer o desaparecer las pantallas en modo texto del programa.

El truco es una CLASE de C++, la cual sirve exclusivamente para presentar de diferentes maneras cualquier tipo de pantalla en modo texto 80x25.

La clase se compone de dos módulos: un modulo cabecera (PRESENTA.HPP) donde está definida la clase y un módulo (PRESENTA.CPP) donde están implementados todos los métodos de la Clase.

Prácticamente todos los métodos y variables de la clase son privados, y los únicos métodos que son públicos son el método constructor de la clase, 'Presenta', y el método 'Borra_pant'.

Para hacer aparecer una pantalla de texto de una de las formas de entre 15 que existen, basta con definir un objeto de esta clase pasándole los correspondientes parámetros que son:

Primero el tipo de presentación en que se quiere que aparezca la pantalla.

Segundo un puntero a la función donde se dibuja dicha pantalla.

Tercero la velocidad en que queremos que se realice la presentación, la cual puede variar entre 1 y 100.

Por ejemplo para presentar una pantalla de forma aleatoria, que está escrita en una función que se llama 'Pantalla()' y a una velocidad de 40, habría que definir un objeto de la siguiente manera:

Presenta *prueba;

prueba=new Presenta(ALEATORIA, pantalla, 40);

o de esta otra forma:

Presenta prueba(ALEATORIA, pantalla, 40);

Aunque a mí particularmente me gusta más la primera.

Para conseguir lo contrario, es decir, hacer desaparecer la pantalla, basta con llamar al otro método de la clase pasándole también como parámetro la forma elegida para hacer desaparecer la pantalla y la velocidad de borrado.

Por ejemplo para la primera forma anterior sería:

prueba->Borra_pant(LINEAS_HORIZ, 30);

y para la segunda forma:

prueba.Borra_pant(LINEAS_HORIZ, 30);

Bueno, espero que haya quedado claro de todas formas junto con la Clase se adjunta un pequeño programa ejemplo, el cual esta continuamente haciendo aparecer y desaparecer pantallas de todas la formas posibles, y con el que se podrá comprobar como se define y se maneja un objeto de esta clase así como poder observar los 15 diferentes efectos de presentaciones.

El programa esta hecho y compilado con el compilador Borland C++ 3.1 y probado en los siguientes ordenadores funcionando siempre correctamente:

Clónico 486 DX2 66MHz

Cop 386 SX 16MHz

IBM PS/Value Point 486 DX 33MHz

IBM PS/Value Point 486 SX 25MHz

Fernando Ruza Rodríguez (Guadalajara)

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información