Portada
Banner
Portada Foros Manuales Enlaces Email
clear1x1.gif clear1x1.gif clear1x1.gif
clear1x1.gif
clear1x1.gif

Portada
Foros
Manuales
Enlaces
Distribuidores
Precios
Sugerencias

Contacto

 

clear1x1.gif clear1x1.gif
 Guía rápida de inicio al GUI de Visual Pro/5 (Parte 19/68)
Primero Previo Próximo Último

Ejercicio de SYSGUI #1: Hola Mundo

Antes de foguearnos más abajo con algunos de los detalles del dispositivo SYSGUI, vamos a intentar trabajar con un ejemplo. Este es un programa clásico que seguiremos llamando "Hola, Mundo", con una interfase gráfica. Una ventana aparecerá con el título "Hola". Contiene un botón único, marcado "OK". La ventana desaparece después de que el usuario haga click en la caja de cierre o en el  botón "OK". Esto deberá ayudarnos para introducir algunos de los conceptos y técnicas de SYSGUI de una forma manual, y posteriormente podamos agregar otros detalles.

0010 OPEN (1)"X0"
0020 PRINT (1)'SEMICHARS'
0030 PRINT (1)'WINDOW'(50,50,50,50,"Hola",$83$); REM "El $83$ hace que
0030:tenga opción de esconderse=$80$, maximizarse=$01$ y cerrarse=$02$
0040 PRINT (1)'BUTTON'(1,5,15,40,0,"OK",$$);  REM "Id, Col, Lin, Anch,
0040: Alto, Título
0050 DIM EVENT$:TMPL(1)
0060 READ RECORD (1,SIZ=LEN(EVENT$))EVENT$
0070 END

Mecanografíe este programa y sálvelo como Ejerc1. Intente correrlo con un SETTRACE.

¡SUGERENCIA! SETTRACE es más útil que siempre para la depuración de programas GUI, desde la ventana de consola si no es utilizada para cualquier otra cosa.

Intente correrlo paso por paso a través de él. (Usted podría usar <Alt>+<Tab> para ver la ventana del GUI si lo hace paso por paso). Note que la ventana puede ser cambiada de tamaño sin que ninguna declaración de programa sea ejecutada. Todo eso es manejado por el sistema del GUI. A menos que usted pregunte por reportes de eventos opcionales, usted puede quedarse quieto y permitir al sistema del GUI hacer una gran cantidad del trabajo!

Ahora vamos a comentar cada una de las líneas de ese programa.

0010 OPEN (1)"X0"

Esto exactamente nos prepara el ambiente para interactuar con el dispositivo de SYSGUI.

0020 PRINT (1)'SEMICHARS'

Esto establece la unidad de medida para la colocación de ventanas y controles a una unidad llamada "semicaracteres". 'SEMICHARS' no debe ser usado para colocar dibujos, solamente campos. Bajo la modalidad de semicaracteres, normalmente una pantalla (completa) se compone de 400 por 300 semicaracteres.

¡CUIDADO! Por omisión las ventanas y controles son posicionados en unidades de pixel, pero esto podría ser un problema debido a los tamaños variables de fuentes del sistema en uso en diferentes máquinas. Por ejemplo, si un botón fue hecho lo suficiente y justamente alto para acomodar el texto "OK" en una máquina, podría resultar demasiado pequeño en otra máquina donde una fuente más grande del sistema se tenga en uso.

En vista de que la fuente del sistema es una función del 'driver' de despliegue, y además es establecida de acuerdo a la preferencia del usuario, Visual PRO/5 no puede cambiar nada al respecto. Sin embargo, éste puede, ajustar el tamaño y localización de todo objeto gráfico para compensar la diferencia de las fuentes entre los distintos sistemas, y esto es exactamente al determinar cuál unidad de "semicaracteres" es considerada.

Un semicaracter es definido como de un cuarto del ancho de un caracter típico en la fuente del sistema actual y de un octavo la altura. Un pixel siempre es igual a un punto en el despliegue, pero un "semichar" podría ser igual a 2.4 pixeles a través y de 2.1 pixeles verticalmente, o alguna otra combinación rara. El tamaño exacto de un semicaracter no es lo que es importante (aunque es posible determinar esto en tiempo de corrida), pero el hecho es que controles con texto (como el botón en nuestro ejemplo) pueden ser hechos para mirarse bien en todos los despliegues.

El editor de recurso de BASIS soporta semicaracteres, que hacen la unidad de fácil manejo. Para máxima portabilidad, la unidad de semicaracteres debería ser utilizada en todas las ventanas donde existan controles que contengan una línea única de texto (el cual podría ser truncado si la fuente es larga). De toda manera, es aceptable y más conveniente, que utilizar pixeles.

0030 PRINT (1)'WINDOW'(50,50,50,50,"Hola',$83$)

El mnemónico 'WINDOW' es usado para crear ventanas gráficas. Usted lo utilizará una y otra vez. Los primeros cuatro parámetros describen la ubicación y tamaño de la ventana (xloc, yloc, ancho, altura). En este caso, hemos situado la ventana a 50 semicaracteres de la esquina superior izquierda a la vez en ambas coordenadas, y el tamaño de ventana de 50 por 50 semicaracteres. Entiéndase bien, que las coordenadas se refieren a los semicaracteres de la pantalla completa.

Primero Previo Próximo Último

Portada -- Foros -- Manuales -- Enlaces-- Sugerencias
Para comentarios: webmaster@essnet.com

clear1x1.gif
clear1x1.gif
clear1x1.gif
Portada Email Foros