El parámetro de título en la línea 40 está
vacío, pero si alguno es proveído, será insertado como el primer párrafo de
texto. La bandera $10$ genera un borde alrededor del control. Esto ayudará a
que usted vea donde están los límites.
Asegúrese de gastar algún tiempo experimentando con esto. Note
que cuando el ratón se mueve sobre el control, este se convierte como una raya
vertical para la entrada de texto. Si hace click con el ratón en el control,
aparece un "signo de intercalación" que centellea, mostrando donde
se procederá con la entrada de texto. Usted puede entonces comenzar a mecanografiar
y va a ver que el control informa inicialmente una ganancia de foco ('f'), y
con cada tecla que se oprima, reportará un cambio ('e').
Si usted entrara líneas largas, el scroll
de la caja funcionará automáticamente, y podrá entrar tantas líneas como desee.
La caja puede ser scroleada con las teclas de flecha, página arriba, página
abajo, inicio y final, o arrastrando el ratón. Con el ratón usted puede arrastrar
fuera una selección de texto, y la elimina o digita sobre el que ya existe.
Usted puede también utilizar el teclado para las funciones estándar de Windows:
^C (copiar) ^X (cortar) y ^V (pegar). Posteriormente, vamos a ver como enganchar
un menú de comandos sobre el panel de control.
Dos adiciones muy útiles al control son la
capacidad de arrollar palabras y barras de desplazamiento. Vamos a añadir ambos.
¡SUGERENCIA! Si la opción de arrollar palabras
estuviera encendida, no hay necesidad de definir una barra de desplazamiento
horizontal. El texto no se saldrá del borde.
0040 PRINT (1)'TXEDIT'(101,10,10,80,80,"",$16$)
El valor de la banderas $16$ es la combinación
de la bandera de borde ($10$), la bandera de barra de desplazamiento vertical
($04$) y la bandera de arrollar palabras ($02$). Corra esta versión del programa
y observe la diferencia en el comportamiento. Ahora, la caja nunca scrolea horizontalmente.
Los párrafos largos simplemente doblan hacia más de una línea física, rompiendo
la línea al final de las palabras, hasta donde sea posible. Una barra de desplazamiento
vertical permite navegación fácil si hay muchos párrafos.
Una variación adicional que es extremadamente
útil es la opción de ventana-completa. Si usted creara un control de edición
multilínea con un ancho y altura de 0, esto automáticamente hará que cambie
de tamaño para ocupar el área completa de su ventana padre. !Inténtelo!
(Nota: Cambiando las banderas a $06$, desde un control de ventana-completa siempre
tendrá un borde suministrado por la ventana padre. El control tendrá un borde
que no es propio.)
0040 PRINT (1)'TXEDIT'(101,0,0,0,0,"",$06$)
En particular, trate de entrar líneas largas
con muchas expresiones en ellas, luego cambie el tamaño de la ventana y vea
como el arrollamiento de palabras redistribuye todo el texto.
Una vez que usted está a gusto con la operación
del control de edición multilínea, interrumpa el programa e intente estas sentencias
de modo inmediato.
PRINT (1)'TXADD'(101,0,"Nueva primer línea","Nueva
segunda línea")
PRINT (1)'TXADD'(101,-1,"Nueva última línea")
Si usted practicó los ejemplos del Ejercicio #8, usted va a
reconocer que la sintaxis para 'TXADD' es idéntica para el mnemónico 'LISTADD'.
El tercero y subsiguientes parámetros a ser añadidos son opcionales. El segundo
parámetro indica donde se puede añadir nuevo material. Un número de párrafo
válido indica que el nuevo texto debería ir antes de ese párrafo, así, por medio
de un 0 se indica añadir antes del párrafo 0, el primer párrafo. Los números
de párrafo son basados en -cero- Si el segundo parámetro es -1, significa que
serán añadidos nuevos párrafos al final.
Como 'LISTADD', 'TXADD' tiene una "forma larga", para
adicionar grandes cantidades de texto directamente desde el canal. Ver el siguiente
ejemplo y observe la coma al final de la primera línea. La segunda línea es
un WRITE, no un PRINT.
PRINT (1)'TXADD'(101,0,3),
WRITE (1)"primero","segundo","tercero"
|